213
213
//! metadata::locator or metadata::creader for all the juicy details!
214
214
215
215
use crate :: creader:: Library ;
216
- use crate :: rmeta:: { rustc_version, MetadataBlob , METADATA_HEADER } ;
216
+ use crate :: rmeta:: { rustc_version, MetadataBlob } ;
217
217
218
218
use rustc_data_structures:: fx:: { FxHashMap , FxHashSet } ;
219
219
use rustc_data_structures:: memmap:: Mmap ;
@@ -231,11 +231,10 @@ use rustc_span::symbol::{sym, Symbol};
231
231
use rustc_span:: Span ;
232
232
use rustc_target:: spec:: { Target , TargetTriple } ;
233
233
234
- use snap:: read:: FrameDecoder ;
235
234
use std:: fmt:: Write as _;
236
- use std:: io:: { Read , Result as IoResult , Write } ;
235
+ use std:: io:: { Result as IoResult , Write } ;
237
236
use std:: path:: { Path , PathBuf } ;
238
- use std:: { cmp , fmt, fs} ;
237
+ use std:: { fmt, fs} ;
239
238
use tracing:: { debug, info} ;
240
239
241
240
#[ derive( Clone ) ]
@@ -757,34 +756,7 @@ fn get_metadata_section<'p>(
757
756
loader. get_rlib_metadata ( target, filename) . map_err ( MetadataError :: LoadFailure ) ?
758
757
}
759
758
CrateFlavor :: Dylib => {
760
- let buf =
761
- loader. get_dylib_metadata ( target, filename) . map_err ( MetadataError :: LoadFailure ) ?;
762
- // The header is uncompressed
763
- let header_len = METADATA_HEADER . len ( ) ;
764
- debug ! ( "checking {} bytes of metadata-version stamp" , header_len) ;
765
- let header = & buf[ ..cmp:: min ( header_len, buf. len ( ) ) ] ;
766
- if header != METADATA_HEADER {
767
- return Err ( MetadataError :: LoadFailure ( format ! (
768
- "invalid metadata version found: {}" ,
769
- filename. display( )
770
- ) ) ) ;
771
- }
772
-
773
- // Header is okay -> inflate the actual metadata
774
- let compressed_bytes = & buf[ header_len..] ;
775
- debug ! ( "inflating {} bytes of compressed metadata" , compressed_bytes. len( ) ) ;
776
- // Assume the decompressed data will be at least the size of the compressed data, so we
777
- // don't have to grow the buffer as much.
778
- let mut inflated = Vec :: with_capacity ( compressed_bytes. len ( ) ) ;
779
- match FrameDecoder :: new ( compressed_bytes) . read_to_end ( & mut inflated) {
780
- Ok ( _) => rustc_erase_owner ! ( OwningRef :: new( inflated) . map_owner_box( ) ) ,
781
- Err ( _) => {
782
- return Err ( MetadataError :: LoadFailure ( format ! (
783
- "failed to decompress metadata: {}" ,
784
- filename. display( )
785
- ) ) ) ;
786
- }
787
- }
759
+ loader. get_dylib_metadata ( target, filename) . map_err ( MetadataError :: LoadFailure ) ?
788
760
}
789
761
CrateFlavor :: Rmeta => {
790
762
// mmap the file, because only a small fraction of it is read.
0 commit comments