patch 9.1.0909: Vim9: crash when calling instance method
Problem: Vim9: crash when calling instance method
(Igbanam Ogbuluijah)
Solution: Pass the object when calling a partial function
(Yegappan Lakshmanan)
fixes: #16166
closes: #16180
Signed-off-by: Yegappan Lakshmanan <yegappan@yahoo.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/src/eval.c b/src/eval.c
index fabe964..6ce5918 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -271,8 +271,10 @@
return FAIL;
// Shortcut to call a compiled function with minimal overhead.
+ if (partial->pt_obj != NULL)
+ partial->pt_obj->obj_refcount++;
r = call_def_function(partial->pt_func, argc, argv, DEF_USE_PT_ARGV,
- partial, NULL, fc, rettv);
+ partial, partial->pt_obj, fc, rettv);
if (fc_arg == NULL)
remove_funccal();
if (r == FAIL)