Skip to content

Commit 6832cfb

Browse files
fattenederKristofferC
authored andcommitted
Fix an off-by-one error in interpreter's do_invoke (#54443)
1 parent 24de7d7 commit 6832cfb

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

src/interpreter.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -135,10 +135,10 @@ static jl_value_t *do_invoke(jl_value_t **args, size_t nargs, interpreter_state
135135
JL_GC_PUSHARGS(argv, nargs - 1);
136136
size_t i;
137137
for (i = 1; i < nargs; i++)
138-
argv[i] = eval_value(args[i], s);
138+
argv[i-1] = eval_value(args[i], s);
139139
jl_method_instance_t *meth = (jl_method_instance_t*)args[0];
140140
assert(jl_is_method_instance(meth));
141-
jl_value_t *result = jl_invoke(argv[1], &argv[2], nargs - 2, meth);
141+
jl_value_t *result = jl_invoke(argv[0], nargs == 2 ? NULL : &argv[1], nargs - 2, meth);
142142
JL_GC_POP();
143143
return result;
144144
}

0 commit comments

Comments
 (0)