From edfd6eae83205a0c0f13656e560ae6809b474abd Mon Sep 17 00:00:00 2001 From: Alexander Larsson Date: Tue, 24 Oct 2017 13:39:49 +0200 Subject: [PATCH] When updating from partial install, disable static deltas The delta can contain references to files in the parent which don't exist locally, which breaks. Closes: #1126 Approved by: alexlarsson --- common/flatpak-dir.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/common/flatpak-dir.c b/common/flatpak-dir.c index 53cabf41..5f5956f4 100644 --- a/common/flatpak-dir.c +++ b/common/flatpak-dir.c @@ -6410,6 +6410,12 @@ flatpak_dir_update (FlatpakDir *self, system_helper = flatpak_dir_get_system_helper (self); g_assert (system_helper != NULL); + /* If the existing pull is partial, disable static deltas. They can + break, because ostree doesn't look at the parent repo for + commitpartial state. */ + if (old_subpaths && old_subpaths[0] != NULL) + flatpak_flags |= FLATPAK_PULL_FLAGS_NO_STATIC_DELTAS; + if (!flatpak_dir_ensure_repo (self, cancellable, error)) return FALSE;