mirror of
https://github.com/NixOS/nix.git
synced 2025-11-14 22:42:41 +01:00
download: improve error for hash mismatch ("store mismatch")
Fixes #1905
(cherry picked from commit 74da813912)
This commit is contained in:
parent
300594f053
commit
2a2b1ac083
1 changed files with 7 additions and 2 deletions
|
|
@ -725,8 +725,13 @@ Path Downloader::downloadCached(ref<Store> store, const string & url_, bool unpa
|
|||
storePath = unpackedStorePath;
|
||||
}
|
||||
|
||||
if (expectedStorePath != "" && storePath != expectedStorePath)
|
||||
throw nix::Error("store path mismatch in file downloaded from '%s'", url);
|
||||
if (expectedStorePath != "" && storePath != expectedStorePath) {
|
||||
Hash gotHash = unpack
|
||||
? hashPath(expectedHash.type, store->toRealPath(storePath)).first
|
||||
: hashFile(expectedHash.type, store->toRealPath(storePath));
|
||||
throw nix::Error("hash mismatch in file downloaded from '%s': expected hash '%s', got '%s'",
|
||||
url, expectedHash.to_string(), gotHash.to_string());
|
||||
}
|
||||
|
||||
return store->toRealPath(storePath);
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue