mirror of
https://github.com/NixOS/nix.git
synced 2024-11-26 08:42:30 +00:00
Fix deadlock in SubstitutionGoal
We were relying on SubstitutionGoal's destructor releasing the lock, but if a goal is a top-level goal, the destructor won't run in a timely manner since its reference count won't drop to zero. So release it explicitly. Fixes #178.
This commit is contained in:
parent
7c7707638a
commit
29cde917fe
@ -2852,6 +2852,7 @@ void SubstitutionGoal::finished()
|
||||
worker.store.registerValidPath(info2);
|
||||
|
||||
outputLock->setDeletion(true);
|
||||
outputLock.reset();
|
||||
|
||||
worker.store.markContentsGood(storePath);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user