From 3cae19c0ccca8069be2e9ef128fd39d64505e22b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Manuel=20Genov=C3=A9s?= Date: Sat, 20 Jul 2019 21:49:44 +0200 Subject: [PATCH] catch exporting errors. Fixes #164 --- uberwriter/main_window.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/uberwriter/main_window.py b/uberwriter/main_window.py index d96e63d..b938852 100644 --- a/uberwriter/main_window.py +++ b/uberwriter/main_window.py @@ -482,7 +482,18 @@ class MainWindow(StyledWindow): response = self.export.dialog.run() if response == 1: - self.export.export(bytes(self.text_view.get_text(), "utf-8")) + try: + self.export.export(bytes(self.text_view.get_text(), "utf-8")) + except Exception as e: + dialog = Gtk.MessageDialog(self, + Gtk.DialogFlags.MODAL | Gtk.DialogFlags.DESTROY_WITH_PARENT, + Gtk.MessageType.ERROR, + Gtk.ButtonsType.CLOSE, + _("An error happened while trying to export:\n\n{err_msg}") + .format(err_msg= str(e).encode().decode("unicode-escape")) + ) + dialog.run() + dialog.destroy() self.export.dialog.destroy()