diff options
author | Eelco Dolstra <e.dolstra@tudelft.nl> | 2010-08-24T11·45+0000 |
---|---|---|
committer | Eelco Dolstra <e.dolstra@tudelft.nl> | 2010-08-24T11·45+0000 |
commit | f58f51f38007f8bfb1089c3b4c88b6e66da15f39 (patch) | |
tree | 1fd756e728b34e3c28ecbe4fbdf9c5a5170950ab /src | |
parent | 955d11aae738f7f9c56c51e8ab2eabdf8732aab1 (diff) |
* Handle the unlikely case where a derivation has no dependencies at
all.
Diffstat (limited to 'src')
-rw-r--r-- | src/libstore/build.cc | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/libstore/build.cc b/src/libstore/build.cc index 6f02762442a1..5617eccf1fec 100644 --- a/src/libstore/build.cc +++ b/src/libstore/build.cc @@ -887,7 +887,10 @@ void DerivationGoal::outputsSubstituted() foreach (PathSet::iterator, i, drv.inputSrcs) addWaitee(worker.makeSubstitutionGoal(*i)); - state = &DerivationGoal::inputsRealised; + if (waitees.empty()) /* to prevent hang (no wake-up event) */ + inputsRealised(); + else + state = &DerivationGoal::inputsRealised; } |