Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: NixOS/nix
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: 780c1a8f2711
Choose a base ref
...
head repository: NixOS/nix
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: 90d6018509e6
Choose a head ref
  • 1 commit
  • 1 file changed
  • 1 contributor

Commits on Oct 2, 2019

  1. Fix aborts when using builtins.getFlake

    In that case, 'self' could refer to a value on the stack, so accessing
    'self.rev' would abort.
    edolstra committed Oct 2, 2019
    Copy the full SHA
    90d6018 View commit details
Showing with 4 additions and 1 deletion.
  1. +4 −1 src/libexpr/flake/flake.cc
5 changes: 4 additions & 1 deletion src/libexpr/flake/flake.cc
Original file line number Diff line number Diff line change
@@ -574,8 +574,9 @@ static void prim_callFlake(EvalState & state, const Pos & pos, Value * * args, V
void callFlake(EvalState & state,
const Flake & flake,
const LockedInputs & lockedInputs,
Value & vRes)
Value & vResFinal)
{
auto & vRes = *state.allocValue();
auto & vInputs = *state.allocValue();

state.mkAttrs(vInputs, flake.inputs.size() + 1);
@@ -617,6 +618,8 @@ void callFlake(EvalState & state,
state.callFunction(vCall, *flake.vOutputs, vCall2, noPos);
state.callFunction(vCall2, vInputs, vCall3, noPos);
state.callFunction(vCall3, vSourceInfo, vRes, noPos);

vResFinal = vRes;
}

void callFlake(EvalState & state,