From ca0d47a70c37999f8cc9c2e82c76661826cfd50a Mon Sep 17 00:00:00 2001 From: Shea Levy Date: Sun, 6 Nov 2011 06:54:05 +0000 Subject: [PATCH] Respect all outputs passed to the derivation, not just the last one --- src/libexpr/primops.cc | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/libexpr/primops.cc b/src/libexpr/primops.cc index 9c217b373..70560302e 100644 --- a/src/libexpr/primops.cc +++ b/src/libexpr/primops.cc @@ -388,8 +388,10 @@ static void prim_derivationStrict(EvalState & state, Value * * args, Value & v) if (!useDrvAsSrc && isDerivation(path)) if (explicitlyPassed) drv.inputDrvs[path] = store -> queryDerivationOutputNames(path); - else + else if (drv.inputDrvs.find(path) == drv.inputDrvs.end()) drv.inputDrvs[path] = singleton(output); + else + drv.inputDrvs[path].insert(output); else drv.inputSrcs.insert(path); }