installation: Avoid dereferencing a potentially NULL pointer

... in flatpak_decomposed_get_ref().

Fallout from db11607016
This commit is contained in:
Debarshi Ray
2022-06-07 18:08:42 +02:00
committed by Sebastian Wick
parent 1fa71d98db
commit 00f22d406d

View File

@@ -3122,14 +3122,25 @@ flatpak_installation_list_unused_refs_with_options (FlatpakInstallation *self,
{
g_autoptr(GError) local_error = NULL;
FlatpakInstalledRef *ref = NULL;
g_autoptr(FlatpakDecomposed) decomposed = flatpak_decomposed_new_from_ref (*iter, &local_error);
if (decomposed)
ref = get_ref (dir, decomposed, cancellable, &local_error);
g_autoptr(FlatpakDecomposed) decomposed = NULL;
if (ref != NULL)
g_ptr_array_add (refs, ref);
else
g_warning ("Unexpected failure getting ref for %s: %s", flatpak_decomposed_get_ref (decomposed), local_error->message);
decomposed = flatpak_decomposed_new_from_ref (*iter, &local_error);
if (decomposed == NULL)
{
g_warning ("Unexpected failure parsing ref %s: %s", *iter, local_error->message);
continue;
}
ref = get_ref (dir, decomposed, cancellable, &local_error);
if (ref == NULL)
{
g_warning ("Unexpected failure getting ref for %s: %s",
flatpak_decomposed_get_ref (decomposed),
local_error->message);
continue;
}
g_ptr_array_add (refs, ref);
}
return g_steal_pointer (&refs);