From a31474e41d2dad810aa905bd932bb66fb1227ca0 Mon Sep 17 00:00:00 2001 From: Philip Withnall Date: Thu, 28 Apr 2022 10:56:10 +0100 Subject: [PATCH] gopenuriportal: Fix a use-after-free on an error path `path` was used in building the error message after it had been freed. Spotted by scan-build. Signed-off-by: Philip Withnall Helps: #1767 --- gio/gopenuriportal.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/gio/gopenuriportal.c b/gio/gopenuriportal.c index 6ef8f037c..2f527d828 100644 --- a/gio/gopenuriportal.c +++ b/gio/gopenuriportal.c @@ -108,10 +108,10 @@ g_openuri_portal_open_uri (const char *uri, errsv = errno; if (fd == -1) { - g_free (path); - g_variant_builder_clear (&opt_builder); g_set_error (error, G_IO_ERROR, g_io_error_from_errno (errsv), "Failed to open '%s'", path); + g_free (path); + g_variant_builder_clear (&opt_builder); return FALSE; }