Merge pull request #49574 from Blackiris/fix-super-call-with-args

Fix "super" call when having at least one argument
This commit is contained in:
Rémi Verschelde 2021-06-14 17:17:00 +02:00 committed by GitHub
commit 47824992d4
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -1989,7 +1989,10 @@ Variant GDScriptFunction::call(GDScriptInstance *p_instance, const Variant **p_a
ip += instr_arg_count;
int self_fun = _code_ptr[ip + 1];
int argc = _code_ptr[ip + 1];
GD_ERR_BREAK(argc < 0);
int self_fun = _code_ptr[ip + 2];
#ifdef DEBUG_ENABLED
if (self_fun < 0 || self_fun >= _global_names_count) {
err_text = "compiler bug, function name not found";
@ -1998,9 +2001,6 @@ Variant GDScriptFunction::call(GDScriptInstance *p_instance, const Variant **p_a
#endif
const StringName *methodname = &_global_names_ptr[self_fun];
int argc = _code_ptr[ip + 2];
GD_ERR_BREAK(argc < 0);
Variant **argptrs = instruction_args;
GET_INSTRUCTION_ARG(dst, argc);