diff options
Diffstat (limited to 'matroska/src')
-rw-r--r-- | matroska/src/unflatten.rs | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/matroska/src/unflatten.rs b/matroska/src/unflatten.rs index 57fd35b..e220689 100644 --- a/matroska/src/unflatten.rs +++ b/matroska/src/unflatten.rs @@ -15,6 +15,7 @@ pub trait IterWithPos { pub struct Unflat<'a> { pub item: MatroskaTag, pub children: Option<Unflatten<'a>>, + pub position: usize, } pub struct Unflatten<'a> { @@ -50,6 +51,7 @@ impl<'a> Unflatten<'a> { if self.stop { return None; } + let position = self.inner.position(); match self.inner.next() { None => None, Some(Err(e)) => Some(Err(e)), @@ -60,6 +62,7 @@ impl<'a> Unflatten<'a> { None } else { Some(Ok(Unflat { + position, children: if master { let end = MatroskaTag::construct_master(item.id(), Master::End).unwrap(); |