diff options
| author | Ben Kimock <kimockb@gmail.com> | 2024-05-03 21:17:57 -0400 |
|---|---|---|
| committer | Ben Kimock <kimockb@gmail.com> | 2024-05-21 20:12:29 -0400 |
| commit | 95150d72465db491f4b04b73545e106462bd003b (patch) | |
| tree | 99ebc1f9f9f08d0ff0065ac0a05fd60bbfb74eb2 /src/librustdoc/scrape_examples.rs | |
| parent | 39e02f1bd1e53d009da382654139f7c0639172a8 (diff) | |
| download | rust-95150d72465db491f4b04b73545e106462bd003b.tar.gz rust-95150d72465db491f4b04b73545e106462bd003b.zip | |
Add a footer in FileEncoder and check for it in MemDecoder
Diffstat (limited to 'src/librustdoc/scrape_examples.rs')
| -rw-r--r-- | src/librustdoc/scrape_examples.rs | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/src/librustdoc/scrape_examples.rs b/src/librustdoc/scrape_examples.rs index 9c9b386edda..0bf98886965 100644 --- a/src/librustdoc/scrape_examples.rs +++ b/src/librustdoc/scrape_examples.rs @@ -344,7 +344,9 @@ pub(crate) fn load_call_locations( Ok(bytes) => bytes, Err(e) => dcx.fatal(format!("failed to load examples: {e}")), }; - let mut decoder = MemDecoder::new(&bytes, 0); + let Some(mut decoder) = MemDecoder::new(&bytes, 0) else { + dcx.fatal(format!("Corrupt metadata encountered in {path}")) + }; let calls = AllCallLocations::decode(&mut decoder); for (function, fn_calls) in calls.into_iter() { |
