]> git.lizzy.rs Git - rust.git/commitdiff
Truncate symbol hashes to 64 bits.
authorEduard Burtescu <edy.burt@gmail.com>
Tue, 31 Dec 2013 23:42:24 +0000 (01:42 +0200)
committerEduard Burtescu <edy.burt@gmail.com>
Tue, 31 Dec 2013 23:42:24 +0000 (01:42 +0200)
src/librustc/back/link.rs

index 6bd898879d12645164dcec82fbf6651382e595f5..cb50e35fd930b71389d5510a3ba2fafb7ee7dd85 100644 (file)
@@ -34,6 +34,7 @@
 use std::str;
 use std::io;
 use std::io::fs;
+use extra::hex::ToHex;
 use extra::tempfile::TempDir;
 use syntax::abi;
 use syntax::ast;
@@ -494,8 +495,10 @@ fn crate_hash(symbol_hasher: &mut Sha256, crateid: &CrateId) -> @str {
     }
 }
 
-pub fn truncated_hash_result(symbol_hasher: &mut Sha256) -> ~str {
-    symbol_hasher.result_str()
+fn truncated_hash_result(symbol_hasher: &mut Sha256) -> ~str {
+    let output = symbol_hasher.result_bytes();
+    // 64 bits should be enough to avoid collisions.
+    output.slice_to(8).to_hex()
 }