diff --git a/src/libostree/ostree-repo-commit.c b/src/libostree/ostree-repo-commit.c index c42f5971..487bd370 100644 --- a/src/libostree/ostree-repo-commit.c +++ b/src/libostree/ostree-repo-commit.c @@ -607,7 +607,8 @@ write_object (OstreeRepo *self, GError **error) { gboolean ret = FALSE; - const char *actual_checksum; + const char *actual_checksum = NULL; + g_autofree char *actual_checksum_owned = NULL; gboolean do_commit; OstreeRepoMode repo_mode; g_autofree char *temp_filename = NULL; @@ -772,7 +773,7 @@ write_object (OstreeRepo *self, actual_checksum = expected_checksum; else { - actual_checksum = ot_checksum_instream_get_string (checksum_input); + actual_checksum = actual_checksum_owned = ot_checksum_instream_get_string (checksum_input); if (expected_checksum && strcmp (actual_checksum, expected_checksum) != 0) { g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED,