[glib: 1/2] trash portal: Handle portal failures
- From: Philip Withnall <pwithnall src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [glib: 1/2] trash portal: Handle portal failures
- Date: Wed, 23 Sep 2020 09:36:34 +0000 (UTC)
commit 88032cb541fd5be40284dd10a58f7080e64b4979
Author: Ryan Gonzalez <rymg19 gmail com>
Date: Tue Sep 15 18:06:56 2020 -0500
trash portal: Handle portal failures
Previously, only whether or not the D-Bus call itself succeeded was
checked, regardless of the result code from the actual trash operation.
gio/gtrashportal.c | 11 +++++++++--
1 file changed, 9 insertions(+), 2 deletions(-)
---
diff --git a/gio/gtrashportal.c b/gio/gtrashportal.c
index 9922be21f..03c933297 100644
--- a/gio/gtrashportal.c
+++ b/gio/gtrashportal.c
@@ -74,8 +74,9 @@ g_trash_portal_trash_file (GFile *file,
GUnixFDList *fd_list = NULL;
int fd, fd_in, errsv;
gboolean ret = FALSE;
+ guint portal_result = 0;
GXdpTrash *proxy;
-
+
proxy = ensure_trash_portal ();
if (proxy == NULL)
{
@@ -114,11 +115,17 @@ g_trash_portal_trash_file (GFile *file,
ret = gxdp_trash_call_trash_file_sync (proxy,
g_variant_new_handle (fd_in),
fd_list,
- NULL,
+ &portal_result,
NULL,
NULL,
error);
+ if (ret && portal_result != 1)
+ {
+ g_set_error (error, G_IO_ERROR, G_IO_ERROR_FAILED, "Trash portal failed on %s", path);
+ ret = FALSE;
+ }
+
out:
g_clear_object (&fd_list);
g_free (path);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]