diff --git a/src/builder-context.c b/src/builder-context.c index 18a3925c..7a51e410 100644 --- a/src/builder-context.c +++ b/src/builder-context.c @@ -425,18 +425,19 @@ builder_context_get_checksum_for (BuilderContext *self, return g_steal_pointer (&checksum); } -void -builder_context_set_checksum_for (BuilderContext *self, - const char *name, - const char *checksum) +gboolean +builder_context_set_checksum_for (BuilderContext *self, + const char *name, + const char *checksum, + GError **error) { g_autoptr(GFile) checksum_file = g_file_get_child (self->checksums_dir, name); if (!flatpak_mkdir_p (self->checksums_dir, - NULL, NULL)) - return; + NULL, error)) + return FALSE; - g_file_set_contents (flatpak_file_get_path_cached (checksum_file), checksum, -1, NULL); + return g_file_set_contents (flatpak_file_get_path_cached (checksum_file), checksum, -1, error); } GFile * diff --git a/src/builder-context.h b/src/builder-context.h index c71c64e2..0d433584 100644 --- a/src/builder-context.h +++ b/src/builder-context.h @@ -109,9 +109,10 @@ void builder_context_set_rebuild_on_sdk_change (BuilderContext *self, gboolean rebuild_on_sdk_change); char * builder_context_get_checksum_for (BuilderContext *self, const char *name); -void builder_context_set_checksum_for (BuilderContext *self, - const char *name, - const char *checksum); +gboolean builder_context_set_checksum_for (BuilderContext *self, + const char *name, + const char *checksum, + GError **error); BuilderContext *builder_context_new (GFile *run_dir, GFile *app_dir, diff --git a/src/builder-main.c b/src/builder-main.c index ae200add..85a7ca8c 100644 --- a/src/builder-main.c +++ b/src/builder-main.c @@ -627,7 +627,11 @@ main (int argc, } } - builder_context_set_checksum_for (build_context, manifest_basename, json_sha256); + if (!builder_context_set_checksum_for (build_context, manifest_basename, json_sha256, &error)) + { + g_printerr ("Failed to set checksum for ā€˜%sā€™: %s\n", manifest_basename, error->message); + return 1; + } if (!builder_manifest_start (manifest, opt_allow_missing_runtimes, build_context, &error)) {