[gnome-commander] Migrate gnome_cmd_con_mkdir function over from GnomeVFS to GIO
- From: Uwe Scholz <uwescholz src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnome-commander] Migrate gnome_cmd_con_mkdir function over from GnomeVFS to GIO
- Date: Fri, 17 Sep 2021 21:31:30 +0000 (UTC)
commit e75874970e4460497407587234974a539b0c3095
Author: Uwe Scholz <u scholz83 gmx de>
Date: Fri Sep 17 23:28:55 2021 +0200
Migrate gnome_cmd_con_mkdir function over from GnomeVFS to GIO
src/dialogs/gnome-cmd-prepare-xfer-dialog.cc | 14 ++++++++------
src/gnome-cmd-con.cc | 27 ++++++++++++++-------------
src/gnome-cmd-con.h | 2 +-
3 files changed, 23 insertions(+), 20 deletions(-)
---
diff --git a/src/dialogs/gnome-cmd-prepare-xfer-dialog.cc b/src/dialogs/gnome-cmd-prepare-xfer-dialog.cc
index 736f9890..43473e28 100644
--- a/src/dialogs/gnome-cmd-prepare-xfer-dialog.cc
+++ b/src/dialogs/gnome-cmd-prepare-xfer-dialog.cc
@@ -157,10 +157,11 @@ static void on_ok (GtkButton *button, GnomeCmdPrepareXferDialog *dialog)
if (choice == 1)
{
- GnomeVFSResult mkdir_result = gnome_cmd_con_mkdir (con, parent_dir);
- if (mkdir_result != GNOME_VFS_OK)
+ GError *error = nullptr;
+ if (!gnome_cmd_con_mkdir (con, parent_dir, error))
{
- gnome_cmd_show_message (*main_win, gnome_vfs_result_to_string
(mkdir_result));
+ gnome_cmd_show_message (*main_win, error->message);
+ g_error_free(error);
g_free (dest_path);
gtk_widget_destroy (GTK_WIDGET (dialog));
return;
@@ -211,10 +212,11 @@ static void on_ok (GtkButton *button, GnomeCmdPrepareXferDialog *dialog)
if (choice == GTK_RESPONSE_OK)
{
- GnomeVFSResult mkdir_result = gnome_cmd_con_mkdir (con, dest_path);
- if (mkdir_result != GNOME_VFS_OK)
+ GError *error = nullptr;
+ if (!gnome_cmd_con_mkdir (con, dest_path, error))
{
- gnome_cmd_show_message (*main_win, gnome_vfs_result_to_string (mkdir_result));
+ gnome_cmd_show_message (*main_win, error->message);
+ g_error_free(error);
g_free (dest_path);
gtk_widget_destroy (GTK_WIDGET (dialog));
return;
diff --git a/src/gnome-cmd-con.cc b/src/gnome-cmd-con.cc
index 013413f8..c68ad0ab 100644
--- a/src/gnome-cmd-con.cc
+++ b/src/gnome-cmd-con.cc
@@ -518,26 +518,27 @@ gboolean gnome_cmd_con_get_path_target_type (GnomeCmdCon *con, const gchar *path
}
-GnomeVFSResult gnome_cmd_con_mkdir (GnomeCmdCon *con, const gchar *path_str)
+gboolean gnome_cmd_con_mkdir (GnomeCmdCon *con, const gchar *path_str, GError *error)
{
- GnomeVFSResult result;
+ GError *tmpError = nullptr;
- g_return_val_if_fail (GNOME_CMD_IS_CON (con), GNOME_VFS_ERROR_BAD_PARAMETERS);
- g_return_val_if_fail (path_str != nullptr, GNOME_VFS_ERROR_BAD_PARAMETERS);
+ g_return_val_if_fail (GNOME_CMD_IS_CON (con), false);
+ g_return_val_if_fail (path_str != nullptr, false);
- GnomeCmdPath *path = gnome_cmd_con_create_path (con, path_str);
- GnomeVFSURI *uri = gnome_cmd_con_create_uri (con, path);
+ auto path = gnome_cmd_con_create_path (con, path_str);
+ auto gFile = gnome_cmd_con_create_gfile (con, path);
- result = gnome_vfs_make_directory_for_uri (
- uri,
- GNOME_CMD_PERM_USER_READ|GNOME_CMD_PERM_USER_WRITE|GNOME_CMD_PERM_USER_EXEC|
- GNOME_CMD_PERM_GROUP_READ|GNOME_CMD_PERM_GROUP_EXEC|
- GNOME_CMD_PERM_OTHER_READ|GNOME_CMD_PERM_OTHER_EXEC);
+ if (!g_file_make_directory (gFile, nullptr, &tmpError))
+ {
+ g_warning("g_file_make_directory error: %s\n", tmpError->message);
+ g_propagate_error(&error, tmpError);
+ return false;
+ }
- gnome_vfs_uri_unref (uri);
+ g_object_unref (gFile);
delete path;
- return result;
+ return true;
}
diff --git a/src/gnome-cmd-con.h b/src/gnome-cmd-con.h
index 6e26ce44..ec83da39 100644
--- a/src/gnome-cmd-con.h
+++ b/src/gnome-cmd-con.h
@@ -343,7 +343,7 @@ void gnome_cmd_con_updated (GnomeCmdCon *con);
gboolean gnome_cmd_con_get_path_target_type (GnomeCmdCon *con, const gchar *path, GFileType *type);
-GnomeVFSResult gnome_cmd_con_mkdir (GnomeCmdCon *con, const gchar *path_str);
+gboolean gnome_cmd_con_mkdir (GnomeCmdCon *con, const gchar *path_str, GError *error);
void gnome_cmd_con_add_to_cache (GnomeCmdCon *con, GnomeCmdDir *dir);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]