From 78b063dfdfecec71e303e21c7c3311f7b00870f9 Mon Sep 17 00:00:00 2001 From: Anna Date: Tue, 21 Mar 2023 18:24:07 -0400 Subject: [PATCH] fix: handle deduped ttmps --- src/ttmp_extractor.rs | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/src/ttmp_extractor.rs b/src/ttmp_extractor.rs index 4566782..3c44aca 100644 --- a/src/ttmp_extractor.rs +++ b/src/ttmp_extractor.rs @@ -52,8 +52,16 @@ impl TtmpExtractor { let mut data_file = TrackingReader::new(zip.by_name("TTMPD.mpd") .map_err(Error::MissingDataFile)?); + let mut last_offset = None; let mut buf = [0; 4096]; for mod_file in all_files { + // handle deduped ttmps + if Some(mod_file.file.mod_offset) == last_offset { + continue; + } + + last_offset = Some(mod_file.file.mod_offset); + let file = mod_file.file; data_file.read = 0;