diff options
author | Vincent Ambo <tazjin@google.com> | 2020-05-22T00·58+0100 |
---|---|---|
committer | Vincent Ambo <tazjin@google.com> | 2020-05-22T00·59+0100 |
commit | 986a8f6b75ffa51682cbe730c5c2907296082cd4 (patch) | |
tree | 32c266920223bbfbf0beb49689dc05cb8eb1f2b7 /third_party/nix/src/nix-env/user-env.cc | |
parent | 42205f27fc820ddc64616d55c04e2ffde1948043 (diff) |
fix(3p/nix): Update for usage of new attribute set API r/802
The new attribute set API uses the iterators of the btree_map directly. This requires changes in various files because the internals of libexpr are very entangled. This code runs and compiles, but there is a bug causing empty attribute sets to be assigned incorrectly.
Diffstat (limited to 'third_party/nix/src/nix-env/user-env.cc')
-rw-r--r-- | third_party/nix/src/nix-env/user-env.cc | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/third_party/nix/src/nix-env/user-env.cc b/third_party/nix/src/nix-env/user-env.cc index adff263ff4cd..21e7d42e8845 100644 --- a/third_party/nix/src/nix-env/user-env.cc +++ b/third_party/nix/src/nix-env/user-env.cc @@ -129,11 +129,11 @@ bool createUserEnv(EvalState& state, DrvInfos& elems, const Path& profile, DLOG(INFO) << "evaluating user environment builder"; state.forceValue(topLevel); PathSet context; - Attr& aDrvPath(*topLevel.attrs->find(state.sDrvPath)); + Attr& aDrvPath(topLevel.attrs->find(state.sDrvPath)->second); Path topLevelDrv = state.coerceToPath(aDrvPath.pos != nullptr ? *(aDrvPath.pos) : noPos, *(aDrvPath.value), context); - Attr& aOutPath(*topLevel.attrs->find(state.sOutPath)); + Attr& aOutPath(topLevel.attrs->find(state.sOutPath)->second); Path topLevelOut = state.coerceToPath(aOutPath.pos != nullptr ? *(aOutPath.pos) : noPos, *(aOutPath.value), context); |