diff --git a/src/libostree/ostree-repo-pull.c b/src/libostree/ostree-repo-pull.c index a8fee076..da46ed32 100644 --- a/src/libostree/ostree-repo-pull.c +++ b/src/libostree/ostree-repo-pull.c @@ -2486,7 +2486,10 @@ process_one_static_delta (OtPullData *pull_data, OSTREE_STATIC_DELTA_OPEN_FLAGS_SKIP_CHECKSUM, NULL, &inline_delta_part, cancellable, error)) - return FALSE; + { + fetch_static_delta_data_free (fetch_data); + return FALSE; + } _ostree_static_delta_part_execute_async (pull_data->repo, fetch_data->objects, diff --git a/src/libostree/ostree-repo-static-delta-compilation.c b/src/libostree/ostree-repo-static-delta-compilation.c index 9084a72f..f06fad68 100644 --- a/src/libostree/ostree-repo-static-delta-compilation.c +++ b/src/libostree/ostree-repo-static-delta-compilation.c @@ -313,14 +313,13 @@ finish_part (OstreeStaticDeltaBuilder *builder, GError **error) static OstreeStaticDeltaPartBuilder * allocate_part (OstreeStaticDeltaBuilder *builder, GError **error) { - OstreeStaticDeltaPartBuilder *part = g_new0 (OstreeStaticDeltaPartBuilder, 1); - if (builder->parts->len > 0) { if (!finish_part (builder, error)) return NULL; } + OstreeStaticDeltaPartBuilder *part = g_new0 (OstreeStaticDeltaPartBuilder, 1); part->objects = g_ptr_array_new_with_free_func ((GDestroyNotify)g_variant_unref); part->payload = g_string_new (NULL); part->operations = g_string_new (NULL);