summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYongha Hwang <mshrimp@sogang.ac.kr>2021-07-05 20:20:10 +0000
committerAlexander Schwinn <alexxcons@xfce.org>2021-07-05 20:20:10 +0000
commitfd165c4c54668f61a2fdeebdf8c1bec9b9c7e4f9 (patch)
tree256d7733a290da029335455531f166e89f72074e
parent7c3f41432f8619055cd265af550fc49c59570a8c (diff)
downloadexo-fd165c4c54668f61a2fdeebdf8c1bec9b9c7e4f9.tar.gz
exo-die: Add trusted flag support
MR !44 Related: [libxfce4util !16](libxfce4util!16) Utilize GVFS safety flag if libxfce4util supports one.
-rw-r--r--configure.ac.in2
-rw-r--r--exo-desktop-item-edit/exo-die-utils.c7
2 files changed, 8 insertions, 1 deletions
diff --git a/configure.ac.in b/configure.ac.in
index afc4d08..4a28d50 100644
--- a/configure.ac.in
+++ b/configure.ac.in
@@ -162,7 +162,7 @@ XDT_CHECK_PACKAGE([GLIB], [glib-2.0], [2.50.0])
XDT_CHECK_PACKAGE([GIO], [gio-2.0], [2.50.0])
XDT_CHECK_PACKAGE([GTK], [gtk+-3.0], [3.22.0])
XDT_CHECK_PACKAGE([GTHREAD], [gthread-2.0], [2.50.0])
-XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [4.12.0])
+XDT_CHECK_PACKAGE([LIBXFCE4UTIL], [libxfce4util-1.0], [4.17.0])
XDT_CHECK_PACKAGE([LIBXFCE4UI], [libxfce4ui-2], [4.15.1])
XDT_CHECK_OPTIONAL_PACKAGE([GIO_UNIX], [gio-unix-2.0], [2.50.0], [gio-unix], [GIO-Unix features])
diff --git a/exo-desktop-item-edit/exo-die-utils.c b/exo-desktop-item-edit/exo-die-utils.c
index f855244..ab4b3c5 100644
--- a/exo-desktop-item-edit/exo-die-utils.c
+++ b/exo-desktop-item-edit/exo-die-utils.c
@@ -26,6 +26,7 @@
#endif
#include <stdio.h>
+#include <libxfce4util/libxfce4util.h>
#include <exo-desktop-item-edit/exo-die-utils.h>
@@ -101,6 +102,9 @@ static void trust_launcher (GFile *gfile)
}
g_object_unref (info);
+
+ if (xfce_g_file_metadata_is_supported (gfile))
+ xfce_g_file_set_trusted (gfile, TRUE, NULL, NULL);
}
@@ -220,6 +224,9 @@ exo_die_g_key_file_save (GKeyFile *key_file,
return FALSE;
}
+ /* need to recalculate checksum */
+ trust = trust || xfce_g_file_is_trusted (file, NULL, NULL);
+
result = g_file_replace_contents (file, data, length, NULL, FALSE,
G_FILE_CREATE_NONE,
NULL, NULL, error);