]> git.ipfire.org Git - thirdparty/freeradius-server.git/commitdiff
copy dict when copying functions
authorAlan T. DeKok <aland@freeradius.org>
Sun, 27 Aug 2023 19:32:33 +0000 (15:32 -0400)
committerAlan T. DeKok <aland@freeradius.org>
Sun, 27 Aug 2023 19:32:33 +0000 (15:32 -0400)
src/lib/unlang/xlat_alloc.c

index 29dfbd67863d155629c9495be2d8b0c910fd25d8..0428d1f745364a5fc773b17b04028d716f44dd8e 100644 (file)
@@ -288,6 +288,7 @@ static int _xlat_copy_internal(NDEBUG_LOCATION_ARGS TALLOC_CTX *ctx, xlat_exp_he
 
                case XLAT_VIRTUAL:
                        node->call.func = p->call.func;
+                       node->call.dict = p->call.dict;
                        node->call.ephemeral = p->call.ephemeral;
                        break;
 
@@ -303,6 +304,7 @@ static int _xlat_copy_internal(NDEBUG_LOCATION_ARGS TALLOC_CTX *ctx, xlat_exp_he
                         *      the xlat instantiation table later.
                         */
                        node->call.func = p->call.func;
+                       node->call.dict = p->call.dict;
                        node->call.ephemeral = p->call.ephemeral;
                        if (unlikely(_xlat_copy_internal(NDEBUG_LOCATION_VALS
                                                         node, node->call.args, p->call.args) < 0)) goto error;