]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
shared/bootspec: add missing assertions
authorMike Yuan <me@yhndnzj.com>
Tue, 14 May 2024 07:50:09 +0000 (15:50 +0800)
committerMike Yuan <me@yhndnzj.com>
Tue, 14 May 2024 10:18:47 +0000 (18:18 +0800)
src/shared/bootspec.c

index 0799191a99873d96ccf3100f18d40e4be42bd536..9e8064b2be8343f11e07f5f273f5c317b8f52fed 100644 (file)
@@ -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))));