diff options
author | regnat <rg@regnat.ovh> | 2021-09-02 09:57:41 +0200 |
---|---|---|
committer | regnat <rg@regnat.ovh> | 2021-09-02 09:57:41 +0200 |
commit | 497225b07d7f05abb40e75c3dfa7e4c05109a2c6 (patch) | |
tree | 07c27bf9583d0cd57e09fbd8d5d14bbfd832a03f /src | |
parent | c397184749f7a273f1311b098fa9152af550e394 (diff) |
Don’t create lockfiles with an invalid path name
Store paths are only allowed to contain a limited subset of the
alphabet, which doesn’t include `!`. So don’t create lockfiles that
contain this `!` character as that would otherwise confuse (and break)
the gc.
Fix #5176
Diffstat (limited to 'src')
-rw-r--r-- | src/libstore/build/derivation-goal.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libstore/build/derivation-goal.cc b/src/libstore/build/derivation-goal.cc index 876b8def0..b94accb73 100644 --- a/src/libstore/build/derivation-goal.cc +++ b/src/libstore/build/derivation-goal.cc @@ -566,7 +566,7 @@ void DerivationGoal::tryToBuild() lockFiles.insert(worker.store.Store::toRealPath(*i.second.second)); else lockFiles.insert( - worker.store.Store::toRealPath(drvPath) + "!" + i.first + worker.store.Store::toRealPath(drvPath) + "." + i.first ); } } |