[gnome-commander] Move error message dialog out of the actual chown action function



commit 0e7488f19fac13e26f46d8eb075db0ca95906710
Author: Uwe Scholz <u scholz83 gmx de>
Date:   Thu Jun 24 19:09:24 2021 +0200

    Move error message dialog out of the actual chown action function

 src/dialogs/gnome-cmd-chown-dialog.cc |  9 ++++++++-
 src/gnome-cmd-file.cc                 | 16 ----------------
 2 files changed, 8 insertions(+), 17 deletions(-)
---
diff --git a/src/dialogs/gnome-cmd-chown-dialog.cc b/src/dialogs/gnome-cmd-chown-dialog.cc
index 23074832..4c9c898d 100644
--- a/src/dialogs/gnome-cmd-chown-dialog.cc
+++ b/src/dialogs/gnome-cmd-chown-dialog.cc
@@ -48,9 +48,16 @@ static void do_chown (GnomeCmdFile *in, uid_t uid, gid_t gid, gboolean recurse)
 {
     g_return_if_fail (in != nullptr);
     g_return_if_fail (in->gFileInfo != nullptr);
+    GError *error = nullptr;
 
-    if(!in->chown(uid, gid, nullptr))
+    if(!in->chown(uid, gid, &error))
     {
+        auto filename = g_file_get_basename(in->gFile);
+        auto message = g_strdup_printf (_("Could not chown %s"), filename);
+        gnome_cmd_show_message (nullptr, message, error->message);
+        g_error_free(error);
+        g_free(filename);
+        g_free(message);
         return;
     }
 
diff --git a/src/gnome-cmd-file.cc b/src/gnome-cmd-file.cc
index 21e1ea18..217be186 100644
--- a/src/gnome-cmd-file.cc
+++ b/src/gnome-cmd-file.cc
@@ -406,14 +406,6 @@ gboolean GnomeCmdFile::chown(uid_t uid, gid_t gid, GError **error)
                                            &tmp_error);
     if (tmp_error)
     {
-        g_message ("chown: retrieving file info failed: %s", tmp_error->message);
-
-        gchar *fname = GetGfileAttributeString(G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME);
-        gchar *msg = g_strdup_printf (_("Could not chown %s"), fname);
-        gnome_cmd_show_message (*main_win, msg, tmp_error->message);
-        g_free (msg);
-        g_free (fname);
-
         g_propagate_error (error, tmp_error);
         return false;
     }
@@ -438,14 +430,6 @@ gboolean GnomeCmdFile::chown(uid_t uid, gid_t gid, GError **error)
                                     &tmp_error);
     if (tmp_error)
     {
-        g_message ("chmod: setting file mode failed: %s", tmp_error->message);
-
-        gchar *fname = GetGfileAttributeString(G_FILE_ATTRIBUTE_STANDARD_DISPLAY_NAME);
-        gchar *msg = g_strdup_printf (_("Could not chown %s"), fname);
-        gnome_cmd_show_message (*main_win, msg, tmp_error->message);
-        g_free (msg);
-        g_free (fname);
-
         g_object_unref(gFileInfoMods);
         g_propagate_error (error, tmp_error);
         return false;


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]