summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKaz Kylheku <kaz@kylheku.com>2020-05-05 17:29:44 -0700
committerKaz Kylheku <kaz@kylheku.com>2020-05-05 17:29:44 -0700
commit6be4b2168d58a9ce47e5a90aa4f54f0061e5d2d4 (patch)
tree705040ab8b635434ce27ab0c23bee4d0d06f3066
parentf09f35e09a4bc741608daf393ea1fd4dc1614048 (diff)
downloadtxr-6be4b2168d58a9ce47e5a90aa4f54f0061e5d2d4.tar.gz
txr-6be4b2168d58a9ce47e5a90aa4f54f0061e5d2d4.tar.bz2
txr-6be4b2168d58a9ce47e5a90aa4f54f0061e5d2d4.zip
funcall: fight spurious retention.
* lib.c (funcall1, funcall2, funcall3, funcall4): Add forgotten argument zaps in the case that routes to generic_funcall.
-rw-r--r--lib.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/lib.c b/lib.c
index 8e8fe63f..9ca1212a 100644
--- a/lib.c
+++ b/lib.c
@@ -6709,7 +6709,7 @@ val funcall1(val fun, val arg)
{
if (type(fun) != FUN || fun->f.optargs || dbg_backtrace) {
args_decl(args, ARGS_MIN);
- args_add(args, arg);
+ args_add(args, z(arg));
return generic_funcall(fun, args);
}
@@ -6761,7 +6761,7 @@ val funcall2(val fun, val arg1, val arg2)
{
if (type(fun) != FUN || fun->f.optargs || dbg_backtrace) {
args_decl(args, ARGS_MIN);
- args_add2(args, arg1, arg2);
+ args_add2(args, z(arg1), z(arg2));
return generic_funcall(fun, args);
}
@@ -6819,7 +6819,7 @@ val funcall3(val fun, val arg1, val arg2, val arg3)
{
if (type(fun) != FUN || fun->f.optargs || dbg_backtrace) {
args_decl(args, ARGS_MIN);
- args_add3(args, arg1, arg2, arg3);
+ args_add3(args, z(arg1), z(arg2), z(arg3));
return generic_funcall(fun, args);
}
@@ -6883,7 +6883,7 @@ val funcall4(val fun, val arg1, val arg2, val arg3, val arg4)
{
if (type(fun) != FUN || fun->f.optargs || dbg_backtrace) {
args_decl(args, ARGS_MIN);
- args_add4(args, arg1, arg2, arg3, arg4);
+ args_add4(args, z(arg1), z(arg2), z(arg3), z(arg4));
return generic_funcall(fun, args);
}