From 05fd7fcbfac6f6fb474275279a2b569e48dd6bb1 Mon Sep 17 00:00:00 2001 From: MattJackson Date: Tue, 28 Jul 2026 11:26:37 -0700 Subject: [PATCH] disc: promote resolve_content_key_map + encrypted_content_ranges to pub The upcoming freemkv-engine crate needs both to build the multipass sweep/patch recovery strategy externally over Disc's public API. Everything else sweep/patch touch on Disc was already pub; these were the only two gaps. No behavior change -- visibility only. --- src/disc/mod.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/disc/mod.rs b/src/disc/mod.rs index afcf98f..9b12b8c 100644 --- a/src/disc/mod.rs +++ b/src/disc/mod.rs @@ -2396,7 +2396,7 @@ impl Disc { /// Fails loud (via the per-title resolve) if any content unit's key is missing. /// `keys` is mutated as fetched keys are banked; the merged ranges are disjoint /// (titles that share a clip resolve the same span — the duplicate is dropped). - pub(crate) fn resolve_content_key_map( + pub fn resolve_content_key_map( &self, reader: &mut dyn SectorSource, keys: &mut crate::decrypt::DecryptKeys, @@ -2436,7 +2436,7 @@ impl Disc { /// /// Empty when the disc has no parsed titles (CSS / unencrypted / unscanned); /// callers treat an empty map as "no content gate" and fall back accordingly. - pub(crate) fn encrypted_content_ranges(&self) -> Vec<(u32, u32)> { + pub fn encrypted_content_ranges(&self) -> Vec<(u32, u32)> { merged_extents(self.titles.iter().flat_map(|t| &t.extents)) }