From: Kostya Shishkov Date: Tue, 19 May 2026 04:28:09 +0000 (+0200) Subject: avimuxer: pad odd-sized chunks X-Git-Url: https://git.nihav.org/?a=commitdiff_plain;h=165ffc1925eb2cf888d8f2a1b37ba986cb8864d0;p=nihav.git avimuxer: pad odd-sized chunks --- diff --git a/nihav-commonfmt/src/muxers/avi.rs b/nihav-commonfmt/src/muxers/avi.rs index c91f2b5..aec5baf 100644 --- a/nihav-commonfmt/src/muxers/avi.rs +++ b/nihav-commonfmt/src/muxers/avi.rs @@ -135,7 +135,10 @@ impl<'a> AVIMuxer<'a> { fn patch_size(bw: &mut dyn ByteIO, pos: u64) -> MuxerResult<()> { let size = bw.tell() - pos; - bw.seek(SeekFrom::Current(-((size + 4) as i64)))?; + if (bw.tell() & 1) != 0 { + bw.write_byte(0)?; + } + bw.seek(SeekFrom::Current(-((((size + 1) & !1) + 4) as i64)))?; bw.write_u32le(size as u32)?; bw.seek(SeekFrom::End(0))?; Ok(())