Skip to content

Commit d45b364

Browse files
committed
Remove a hacky buffer extraction from metadata
1 parent 11ce6b7 commit d45b364

File tree

1 file changed

+6
-6
lines changed

1 file changed

+6
-6
lines changed

src/librustc/metadata/encoder.rs

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,6 @@ use std::hashmap::{HashMap, HashSet};
2727
use std::io::mem::MemWriter;
2828
use std::io::{Writer, Seek, Decorator};
2929
use std::str;
30-
use std::util;
3130
use std::vec;
3231

3332
use extra::serialize::Encodable;
@@ -1797,6 +1796,11 @@ pub static metadata_encoding_version : &'static [u8] =
17971796

17981797
pub fn encode_metadata(parms: EncodeParams, crate: &Crate) -> ~[u8] {
17991798
let mut wr = MemWriter::new();
1799+
encode_metadata_inner(&mut wr, parms, crate);
1800+
wr.inner()
1801+
}
1802+
1803+
fn encode_metadata_inner(wr: &mut MemWriter, parms: EncodeParams, crate: &Crate) {
18001804
let stats = Stats {
18011805
inline_bytes: Cell::new(0),
18021806
attr_bytes: Cell::new(0),
@@ -1838,7 +1842,7 @@ pub fn encode_metadata(parms: EncodeParams, crate: &Crate) -> ~[u8] {
18381842
reachable: reachable,
18391843
};
18401844

1841-
let mut ebml_w = writer::Encoder(&mut wr);
1845+
let mut ebml_w = writer::Encoder(wr);
18421846

18431847
encode_hash(&mut ebml_w, ecx.link_meta.crate_hash);
18441848

@@ -1909,10 +1913,6 @@ pub fn encode_metadata(parms: EncodeParams, crate: &Crate) -> ~[u8] {
19091913
// Pad this, since something (LLVM, presumably) is cutting off the
19101914
// remaining % 4 bytes.
19111915
ebml_w.writer.write(&[0u8, 0u8, 0u8, 0u8]);
1912-
1913-
// This is a horrible thing to do to the outer MemWriter, but thankfully we
1914-
// don't use it again so... it's ok right?
1915-
return util::replace(ebml_w.writer.inner_mut_ref(), ~[]);
19161916
}
19171917

19181918
// Get the encoded string for a type

0 commit comments

Comments
 (0)