about summary refs log tree commit diff
diff options
context:
space:
mode:
authorYoshiki Matsuda <myskjp@gmail.com>2022-05-02 16:44:59 +0900
committerYoshiki Matsuda <myskjp@gmail.com>2022-07-02 22:54:37 +0900
commite11dd802c1aa07ed61de2fdc8a7c79bae1e99f0a (patch)
tree0ee86ab0d6460a87e21d2829b3d0a569c2bf6e01
parent1ead92dd64d256ec631fb05eb4d5723c179533cb (diff)
downloadrust-e11dd802c1aa07ed61de2fdc8a7c79bae1e99f0a.tar.gz
rust-e11dd802c1aa07ed61de2fdc8a7c79bae1e99f0a.zip
seek before counting zero bytes
-rw-r--r--compiler/rustc_metadata/src/rmeta/encoder.rs3
1 files changed, 2 insertions, 1 deletions
diff --git a/compiler/rustc_metadata/src/rmeta/encoder.rs b/compiler/rustc_metadata/src/rmeta/encoder.rs
index fc069a233f3..71642305504 100644
--- a/compiler/rustc_metadata/src/rmeta/encoder.rs
+++ b/compiler/rustc_metadata/src/rmeta/encoder.rs
@@ -40,7 +40,7 @@ use rustc_span::{
 use rustc_target::abi::VariantIdx;
 use std::borrow::Borrow;
 use std::hash::Hash;
-use std::io::{Read, Write};
+use std::io::{Read, Seek, Write};
 use std::iter;
 use std::num::NonZeroUsize;
 use std::path::{Path, PathBuf};
@@ -735,6 +735,7 @@ impl<'a, 'tcx> EncodeContext<'a, 'tcx> {
 
         if tcx.sess.meta_stats() {
             let mut zero_bytes = 0;
+            self.opaque.file().seek(std::io::SeekFrom::Start(0)).unwrap();
             let file = std::io::BufReader::new(self.opaque.file());
             for e in file.bytes() {
                 if e.unwrap() == 0 {