Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
openSUSE:Leap:15.5:Update
flatpak.25785
0001-dir-Fix-GError-handling-in-flatpak_load_de...
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File 0001-dir-Fix-GError-handling-in-flatpak_load_deplot_data.patch of Package flatpak.25785
From 62d7c62779a7c619486379a65cc318a8993f0833 Mon Sep 17 00:00:00 2001 From: Matthew Leeds <matthew.leeds@endlessm.com> Date: Wed, 27 Feb 2019 16:55:26 -0800 Subject: [PATCH] dir: Fix GError handling in flatpak_load_deploy_data() Commit b20ee7e26 introduced a bug where flatpak_load_deploy_data() returns NULL without setting @error in the case that there's a problem reading the deploy file. I think this is causing a seg fault in flatpak_installation_list_installed_refs() which tries to print the error message after calling get_ref() (which indirectly loads the deploy file). I didn't personally verify that this fixes the GNOME Builder seg fault that was reported, but it seems almost certain looking at the provided stack trace, since get_ref() only returns NULL if flatpak_dir_get_deploy_data() returns NULL, and that function clearly sets the error pointer on failure except in flatpak_load_deploy_data(). I'm not sure why the deploy file doesn't exist (or is unreadable) for the user who reported this seg fault. Fixes https://github.com/flatpak/flatpak/issues/2717 Closes: #2733 Approved by: matthiasclasen (cherry picked from commit 7a5c0246954566e4e7516b26beced10762290241) --- common/flatpak-dir.c | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/common/flatpak-dir.c b/common/flatpak-dir.c index 6f0526d29..79fa361d6 100644 --- a/common/flatpak-dir.c +++ b/common/flatpak-dir.c @@ -574,13 +574,12 @@ flatpak_load_deploy_data (GFile *deploy_dir, GError **error) { g_autoptr(GFile) data_file = NULL; - g_autoptr(GError) my_error = NULL; char *data = NULL; gsize data_size; g_autoptr(GVariant) deploy_data = NULL; data_file = g_file_get_child (deploy_dir, "deploy"); - if (!g_file_load_contents (data_file, cancellable, &data, &data_size, NULL, &my_error)) + if (!g_file_load_contents (data_file, cancellable, &data, &data_size, NULL, error)) return NULL; deploy_data = g_variant_ref_sink (g_variant_new_from_data (FLATPAK_DEPLOY_DATA_GVARIANT_FORMAT,
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor