From: Alexander Larsson Date: Mon, 28 Nov 2016 14:57:11 +0000 (+0100) Subject: pull: Don't leak delta superblock variants X-Git-Tag: archive/raspbian/2017.12-1+rpi1~1^2^2^2^2^2^2^2^2^2~12 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=dc2bca0af52627cda809a6d0522b0e810d2d9c68;p=ostree.git pull: Don't leak delta superblock variants Closes: #596 Approved by: cgwalters Origin: upstream, 2016.15, commit:36f7824 Gbp-Pq: Name pull-Don-t-leak-delta-superblock-variants.patch --- diff --git a/src/libostree/ostree-repo-pull.c b/src/libostree/ostree-repo-pull.c index 303daec4..ffa387a9 100644 --- a/src/libostree/ostree-repo-pull.c +++ b/src/libostree/ostree-repo-pull.c @@ -1478,8 +1478,8 @@ request_static_delta_superblock_sync (OtPullData *pull_data, } } - ret_delta_superblock = g_variant_new_from_bytes ((GVariantType*)OSTREE_STATIC_DELTA_SUPERBLOCK_FORMAT, - delta_superblock_data, FALSE); + ret_delta_superblock = g_variant_ref_sink (g_variant_new_from_bytes ((GVariantType*)OSTREE_STATIC_DELTA_SUPERBLOCK_FORMAT, + delta_superblock_data, FALSE)); } ret = TRUE; @@ -2951,7 +2951,7 @@ ostree_repo_pull_with_options (OstreeRepo *self, g_autofree char *from_revision = NULL; const char *ref = key; const char *to_revision = value; - GVariant *delta_superblock = NULL; + g_autoptr(GVariant) delta_superblock = NULL; if (!ostree_repo_resolve_rev (pull_data->repo, ref, TRUE, &from_revision, error))