diff -r e93dc5b1da07 -r 7a2642891e13 ui/common/args.c --- a/ui/common/args.c Tue Jul 08 12:10:23 2025 +0200 +++ b/ui/common/args.c Sat Jul 12 12:35:38 2025 +0200 @@ -1030,6 +1030,11 @@ args->style_class = strdup(classname); } +UIEXPORT void ui_sourcelist_args_set_static_sublists(UiSourceListArgs *args, UiSubList *sublists, int numsublists) { + args->sublists = calloc(numsublists, sizeof(UiSubList)); + memcpy(args->sublists, sublists, numsublists * sizeof(UiSubList)); + args->numsublists = numsublists; +} void ui_sourcelist_args_set_varname(UiSourceListArgs *args, const char *varname) { args->varname = strdup(varname); @@ -1071,6 +1076,7 @@ free((void*)args->name); free((void*)args->style_class); free((void*)args->varname); + free((void*)args->sublists); free(args); }