[meld: 5/8] freezed: improve dependency error handling by raising an exception



commit b06b57a882ec33f014955fcc920c32e1ff7c5130
Author: Vasily Galkin <galkin-vv ya ru>
Date:   Thu Jul 5 23:43:58 2018 +0300

    freezed: improve dependency error handling by raising an exception
    
    Freezed app may lack console but have the ability to display
    message boxes with exceptions, for example with Win32GUI base.
    So raising exception for freezed case simplifies dependencies debugging
    by making error visible.

 bin/meld | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)
---
diff --git a/bin/meld b/bin/meld
index 1237926f..4483c5b2 100755
--- a/bin/meld
+++ b/bin/meld
@@ -151,6 +151,7 @@ def show_error_and_exit(error_text):
     to display wrong python version.
     """
     print(error_text)
+    raise_as_last_resort_to_display = False
     try:
         import gi
         gi.require_version("Gtk", "3.0")
@@ -174,8 +175,11 @@ def show_error_and_exit(error_text):
             toplevel.wait_visibility()
             showerror("Meld", error_text, parent=toplevel)
         except Exception:
-            # Displaying with tkinter failed too, just exit.
-            pass
+            # Displaying with tkinter failed too, just exit if not frozen.
+            # Frozen app may lack console but be able to show exceptions.
+            raise_as_last_resort_to_display = frozen
+    if raise_as_last_resort_to_display:
+        raise Exception(error_text)
     sys.exit(1)
 
 


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