From: Mike Yuan Date: Tue, 14 May 2024 07:50:09 +0000 (+0800) Subject: shared/bootspec: add missing assertions X-Git-Tag: v256-rc2~17^2~4 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=19cb99e74ac98c8aec317cca2d50a4afd30ad9ac;p=thirdparty%2Fsystemd.git shared/bootspec: add missing assertions --- diff --git a/src/shared/bootspec.c b/src/shared/bootspec.c index 0799191a998..9e8064b2be8 100644 --- a/src/shared/bootspec.c +++ b/src/shared/bootspec.c @@ -880,19 +880,22 @@ static int insert_boot_entry_addon( char *location, char *cmdline) { + assert(addons); + if (!GREEDY_REALLOC(addons->items, addons->n_items + 1)) return log_oom(); - addons->items[addons->n_items] = (BootEntryAddon) { + addons->items[addons->n_items++] = (BootEntryAddon) { .location = location, .cmdline = cmdline, }; - addons->n_items++; return 0; } static void boot_entry_addons_done(BootEntryAddons *addons) { + assert(addons); + FOREACH_ARRAY(addon, addons->items, addons->n_items) { free(addon->cmdline); free(addon->location); @@ -1542,7 +1545,11 @@ static int json_addon( int r; - r = json_variant_append_arrayb(array, + assert(addon); + assert(addon_str); + + r = json_variant_append_arrayb( + array, JSON_BUILD_OBJECT( JSON_BUILD_PAIR(addon_str, JSON_BUILD_STRING(addon->location)), JSON_BUILD_PAIR("options", JSON_BUILD_STRING(addon->cmdline))));