diff options
Diffstat (limited to 'main/src/ui/conversation_content_view/file_widget.vala')
| -rw-r--r-- | main/src/ui/conversation_content_view/file_widget.vala | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/main/src/ui/conversation_content_view/file_widget.vala b/main/src/ui/conversation_content_view/file_widget.vala index f031db21..0e3cee03 100644 --- a/main/src/ui/conversation_content_view/file_widget.vala +++ b/main/src/ui/conversation_content_view/file_widget.vala @@ -169,8 +169,13 @@ public class FileWidgetController : Object { save_dialog.set_current_name(file_transfer.file_name); save_dialog.response.connect(() => { - try{ - GLib.File.new_for_uri(file_transfer.get_file().get_uri()).copy(save_dialog.get_file(), GLib.FileCopyFlags.OVERWRITE, null); + File? target_file = save_dialog.get_file(); + if (target_file == null) { + warning("No file returned from save dialog."); + return; + } + try { + file_transfer.get_file().copy(save_dialog.get_file(), GLib.FileCopyFlags.OVERWRITE, null); } catch (Error err) { warning("Failed copy file %s - %s", file_transfer.get_file().get_uri(), err.message); } |
