mirror of
https://github.com/privatevoid-net/nix-super.git
synced 2024-11-22 22:16:16 +02:00
* The predecessor of a successor need not be present. This in
particular happens on distributed builds or when using push/pull.
This commit is contained in:
parent
ae1a1efa41
commit
62fe5c4a22
1 changed files with 6 additions and 4 deletions
|
@ -297,11 +297,13 @@ const char * * strings2CharPtrs(const Strings & ss)
|
|||
/* Should only be called after an expression has been normalised. */
|
||||
Path queryNormalForm(const Path & nePath)
|
||||
{
|
||||
StoreExpr ne = storeExprFromPath(nePath);
|
||||
if (ne.type == StoreExpr::neClosure) return nePath;
|
||||
Path nfPath;
|
||||
if (!querySuccessor(nePath, nfPath)) abort();
|
||||
return nfPath;
|
||||
if (querySuccessor(nePath, nfPath)) return nfPath;
|
||||
/* If there is no successor, than nePath must be a normal form
|
||||
itself. */
|
||||
StoreExpr ne = storeExprFromPath(nePath);
|
||||
if (ne.type != StoreExpr::neClosure) abort();
|
||||
return nePath;
|
||||
}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in a new issue