From 70b7ff30e56b13006fe565de827b2744c6adc8cd Mon Sep 17 00:00:00 2001 From: Joseph Hunkeler Date: Mon, 6 Apr 2026 19:00:44 -0400 Subject: Free context on error --- src/lib/delivery/delivery_init.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/lib/delivery/delivery_init.c b/src/lib/delivery/delivery_init.c index eb0b527..dcdd3cc 100644 --- a/src/lib/delivery/delivery_init.c +++ b/src/lib/delivery/delivery_init.c @@ -296,18 +296,22 @@ int bootstrap_build_info(struct Delivery *ctx) { if (delivery_init_platform(&local)) { SYSDEBUG("%s", "delivery_init_platform failed"); + delivery_free(&local); return -1; } if (populate_delivery_cfg(&local, INI_READ_RENDER)) { SYSDEBUG("%s", "populate_delivery_cfg failed"); + delivery_free(&local); return -1; } if (populate_delivery_ini(&local, INI_READ_RENDER)) { SYSDEBUG("%s", "populate_delivery_ini failed"); + delivery_free(&local); return -1; } if (populate_info(&local)) { SYSDEBUG("%s", "populate_info failed"); + delivery_free(&local); return -1; } ctx->info.build_name = strdup(local.info.build_name); @@ -317,6 +321,7 @@ int bootstrap_build_info(struct Delivery *ctx) { ctx->info.time_info = malloc(sizeof(*ctx->info.time_info)); if (!ctx->info.time_info) { SYSERROR("Unable to allocate %zu bytes for tm struct: %s", sizeof(*local.info.time_info), strerror(errno)); + delivery_free(&local); return -1; } } -- cgit