Skip to content

Commit 4f8042e

Browse files
committed
Support reading thin archives in ArArchiveBuilder
1 parent 8291d68 commit 4f8042e

File tree

1 file changed

+11
-4
lines changed

1 file changed

+11
-4
lines changed

compiler/rustc_codegen_ssa/src/back/archive.rs

Lines changed: 11 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -307,10 +307,17 @@ impl<'a> ArchiveBuilder for ArArchiveBuilder<'a> {
307307
let file_name = String::from_utf8(entry.name().to_vec())
308308
.map_err(|err| io::Error::new(io::ErrorKind::InvalidData, err))?;
309309
if !skip(&file_name) {
310-
self.entries.push((
311-
file_name.into_bytes(),
312-
ArchiveEntry::FromArchive { archive_index, file_range: entry.file_range() },
313-
));
310+
if entry.is_thin() {
311+
self.entries.push((
312+
file_name.clone().into_bytes(),
313+
ArchiveEntry::File(PathBuf::from(file_name)),
314+
));
315+
} else {
316+
self.entries.push((
317+
file_name.into_bytes(),
318+
ArchiveEntry::FromArchive { archive_index, file_range: entry.file_range() },
319+
));
320+
}
314321
}
315322
}
316323

0 commit comments

Comments
 (0)