From 6c06f87665ca100c23e867df60aeefa244272229 Mon Sep 17 00:00:00 2001 From: robxnano <12855608-robxnano@users.noreply.gitlab.com> Date: Tue, 7 Nov 2023 15:43:30 +0000 Subject: export: Don't automatically add file extension xdg-desktop-portal only allows access to the file named in the save dialog. Removing this code allows for better compatibility with sandboxing APIs. --- plugins/rdp/rdp_file.c | 14 ++------------ src/remmina_main.c | 1 + 2 files changed, 3 insertions(+), 12 deletions(-) diff --git a/plugins/rdp/rdp_file.c b/plugins/rdp/rdp_file.c index cfd8c3057..fc161e850 100644 --- a/plugins/rdp/rdp_file.c +++ b/plugins/rdp/rdp_file.c @@ -283,25 +283,15 @@ gboolean remmina_rdp_file_export(RemminaFilePlugin *plugin, RemminaFile *remmina { TRACE_CALL(__func__); FILE *fp; - gchar *p; gboolean ret; - p = strrchr(to_file, '.'); - - if (p && (g_strcmp0(p + 1, "rdp") == 0 || g_strcmp0(p + 1, "RDP") == 0)) - p = g_strdup(to_file); - else - p = g_strdup_printf("%s.rdp", to_file); - - fp = g_fopen(p, "w+"); + fp = g_fopen(to_file, "w+"); if (fp == NULL) { - g_print("Failed to export %s\n", p); - g_free(p); + g_print("Failed to export %s\n", to_file); return FALSE; } - g_free(p); ret = remmina_rdp_file_export_channel(remminafile, fp); fclose(fp); diff --git a/src/remmina_main.c b/src/remmina_main.c index 60fc4e47a..b4dd37233 100644 --- a/src/remmina_main.c +++ b/src/remmina_main.c @@ -1312,6 +1312,7 @@ void remmina_main_on_action_tools_export(GSimpleAction *action, GVariant *param, GTK_FILE_CHOOSER_ACTION_SAVE, _("_Save"), _("_Cancel")); gtk_native_dialog_set_modal(GTK_NATIVE_DIALOG(chooser), TRUE); remmina_set_file_chooser_filters(GTK_FILE_CHOOSER(chooser)); + gtk_file_chooser_set_do_overwrite_confirmation(GTK_FILE_CHOOSER(chooser), TRUE); export_name = g_strdup_printf("%s.rdp", remminamain->priv->selected_name); gtk_file_chooser_set_current_name(GTK_FILE_CHOOSER(chooser), export_name); g_free(export_name); -- cgit v1.2.3