Make sure all input archives are unmapped before persisting the output archive
This commit is contained in:
parent
e1edc13afb
commit
a99838a115
@ -290,11 +290,17 @@ fn build_inner(self, output: &Path) -> io::Result<bool> {
|
||||
false,
|
||||
)?;
|
||||
|
||||
let any_entries = !entries.is_empty();
|
||||
drop(entries);
|
||||
// Drop src_archives to unmap all input archives, which is necessary if we want to write the
|
||||
// output archive to the same location as an input archive on Windows.
|
||||
drop(self.src_archives);
|
||||
|
||||
archive_tmpfile
|
||||
.persist(output)
|
||||
.map_err(|err| io_error_context("failed to rename archive file", err.error))?;
|
||||
|
||||
Ok(!entries.is_empty())
|
||||
Ok(any_entries)
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user