diff options
author | metamuffin <metamuffin@disroot.org> | 2024-01-28 03:21:03 +0100 |
---|---|---|
committer | metamuffin <metamuffin@disroot.org> | 2024-01-28 03:21:03 +0100 |
commit | ce9eb140ab9243d1c87ace4727a82b7fa50f964b (patch) | |
tree | b64da94ba58f72a2371cdd8644dc48a178b7d260 /remuxer/src/remux.rs | |
parent | b514ec8cea2c2143e0bd7a0eb377c96a6f091d0d (diff) | |
download | jellything-ce9eb140ab9243d1c87ace4727a82b7fa50f964b.tar jellything-ce9eb140ab9243d1c87ace4727a82b7fa50f964b.tar.bz2 jellything-ce9eb140ab9243d1c87ace4727a82b7fa50f964b.tar.zst |
fix yet another fundamental issue in the ebml reader and seekindex.
Diffstat (limited to 'remuxer/src/remux.rs')
-rw-r--r-- | remuxer/src/remux.rs | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/remuxer/src/remux.rs b/remuxer/src/remux.rs index 8273c9e..851b43d 100644 --- a/remuxer/src/remux.rs +++ b/remuxer/src/remux.rs @@ -31,7 +31,7 @@ use std::{ struct ClusterLayout { position: usize, timestamp: u64, - source_offsets: Vec<Option<usize>>, + source_offsets: Vec<Option<u64>>, blocks: Vec<(usize, BlockIndex)>, } @@ -277,7 +277,7 @@ pub fn remux_stream_into( // this should be fine since tracks are only read according to segment_layout find_first_cluster_with_off(&segment_layout, skip, i) .ok_or(anyhow!("cluster hole at eof"))?, - MatroskaTag::Cluster(Master::Start), + MatroskaTag::Cluster(Master::Start), // TODO shouldn't this be a child of cluster? ) .context("seeking in input")?; let mut stream = @@ -333,7 +333,7 @@ fn find_first_cluster_with_off( segment_layout: &[ClusterLayout], skip: usize, track: usize, -) -> Option<usize> { +) -> Option<u64> { for skip in skip..segment_layout.len() { if let Some(off) = segment_layout[skip].source_offsets[track] { return Some(off); |