[ruamoko] Push the forwarded args block

This causes the block to be freed when the forward: handler returns
(assuming it's not yet another builtin). This is necessary so calling a
lot of forwarded messages in a loop doesn't leak memory (though it will
get freed eventually).
This commit is contained in:
Bill Currie 2020-03-09 23:38:27 +09:00
parent f290b115a5
commit af37b660e8

View file

@ -1276,6 +1276,7 @@ rua___obj_forward (progs_t *pr)
P_POINTER (pr, 2) = PR_SetPointer (pr, sel);
P_PACKED (pr, pr_va_list_t, 3).count = argc;
P_PACKED (pr, pr_va_list_t, 3).list = PR_SetPointer (pr, argv);
PR_PushTempString (pr, args_block);
PR_CallFunction (pr, imp);
return;
}