]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
Allocate args when copying an xlat function
authorNick Porter <nick@portercomputing.co.uk>
Fri, 26 Sep 2025 18:46:38 +0000 (19:46 +0100)
committerNick Porter <nick@portercomputing.co.uk>
Mon, 29 Sep 2025 16:35:47 +0000 (17:35 +0100)
src/lib/unlang/xlat_alloc.c

index c08ae80128a212f2f942f8e78b058aef654da43f..ab9931c8d47b4ff4ea15ab9ccc949ffef7e72cda 100644 (file)
@@ -405,6 +405,8 @@ static int CC_HINT(nonnull) _xlat_copy_internal(NDEBUG_LOCATION_ARGS TALLOC_CTX
                        node->call.func = p->call.func;
                        node->call.dict = p->call.dict;
                        node->call.ephemeral = p->call.ephemeral;
+                       node->call.args = xlat_exp_head_alloc(node);
+                       node->call.args->is_argv = true;
                        if (unlikely(_xlat_copy_internal(NDEBUG_LOCATION_VALS
                                                         node, node->call.args, p->call.args) < 0)) goto error;
                        break;