Fix rc5 audit findings: keydb doc, pipeline ordering, hot-loop Arc, tests
- keydb.rs: separate default_path()/no_home_dir() doc blocks; correct the false XDG lock-step claim (Linux write path uses $HOME, ignores XDG_CONFIG_HOME; read-side search also checks XDG_CONFIG_HOME). - io/pipeline.rs: use Release/Acquire on the abandoned flag so a leaked consumer reliably skips close() on weak memory models (ARM64/POWER), not just x86 TSO. - mux/disc.rs: cache the decrypt-loss Arc at construction; lost_bytes() no longer clones an Arc per frame on the mux hot path. - disc/dvd.rs: assert display_aspect mapping for both 16:9 (PAL test) and 4:3 (NTSC test). - mux/resolve.rs: extract css_error_aborts() helper and unit-test the scrambled-but-uncracked CSS guard (Fix 6) incl. the --raw exemption. - aacs/keys.rs: add unit tests for mkb_type_raw/mkb_type/mkb_is_uhd and MkbType (Category C 2.0 UHD, prerecorded 1.0, no-0x10-record None). - release.yml: publish job needs [verify, test] so a failing test suite blocks crates.io publication.
This commit is contained in:
+11
-1
@@ -542,7 +542,7 @@ mod tests {
|
||||
let vmg = build_vmg(&[(1, 1, 1)]);
|
||||
let vts = build_vts(
|
||||
0,
|
||||
crate::ifo::v_atr_byte(crate::ifo::VIDEO_FORMAT_PAL, crate::ifo::ASPECT_4X3),
|
||||
crate::ifo::v_atr_byte(crate::ifo::VIDEO_FORMAT_PAL, crate::ifo::ASPECT_16X9),
|
||||
&[],
|
||||
&[],
|
||||
&[(0, 9)],
|
||||
@@ -582,6 +582,11 @@ mod tests {
|
||||
ColorSpace::Bt470bg,
|
||||
"PAL DVD is SD BT.470BG, not BT.709"
|
||||
);
|
||||
assert_eq!(
|
||||
v.display_aspect,
|
||||
Some((16, 9)),
|
||||
"ASPECT_16X9 IFO byte must map to a 16:9 display aspect"
|
||||
);
|
||||
}
|
||||
|
||||
/// NTSC DVD video is SD SMPTE-170M colorimetry (not BT.709). Mirror of the
|
||||
@@ -631,6 +636,11 @@ mod tests {
|
||||
ColorSpace::Smpte170m,
|
||||
"NTSC DVD is SD SMPTE-170M, not BT.709"
|
||||
);
|
||||
assert_eq!(
|
||||
v.display_aspect,
|
||||
Some((4, 3)),
|
||||
"ASPECT_4X3 IFO byte must map to a 4:3 display aspect"
|
||||
);
|
||||
}
|
||||
|
||||
/// AC-3 audio gets sub_stream_id 0x80 → PID routed via dvd_audio_pid
|
||||
|
||||
Reference in New Issue
Block a user