- add some exit-on-crash stuff, hope it catches the important cases
[enigma2.git] / mytest.py
index 68d777a9ee562cacf961ff07e344dbaf89dc439a..d04990d637de2c0a467baaec789d11f1405ef08a 100644 (file)
--- a/mytest.py
+++ b/mytest.py
@@ -1,6 +1,7 @@
 from enigma import *
 from tools import *
 
 from enigma import *
 from tools import *
 
+import traceback
 import Screens.InfoBar
 
 import sys
 import Screens.InfoBar
 
 import sys
@@ -95,7 +96,15 @@ class Session:
        
        def instantiateDialog(self, screen, *arguments):
                # create dialog
        
        def instantiateDialog(self, screen, *arguments):
                # create dialog
-               dlg = self.create(screen, arguments)
+               
+               try:
+                       dlg = self.create(screen, arguments)
+               except:
+                       print 'EXCEPTION IN DIALOG INIT CODE, ABORTING:'
+                       print '-'*60
+                       traceback.print_exc(file=sys.stdout)
+                       quitMainloop()
+                       print '-'*60
                
                # read skin data
                readSkin(dlg, None, dlg.skinName, self.desktop)
                
                # read skin data
                readSkin(dlg, None, dlg.skinName, self.desktop)
@@ -164,7 +173,14 @@ import Components.InputDevice
 Components.InputDevice.InitInputDevices()
 
 # first, setup a screen
 Components.InputDevice.InitInputDevices()
 
 # first, setup a screen
-runScreenTest()
+try:
+       runScreenTest()
+except:
+       print 'EXCEPTION IN PYTHON STARTUP CODE:'
+       print '-'*60
+       traceback.print_exc(file=sys.stdout)
+       quitMainloop()
+       print '-'*60
 
 # now, run the mainloop
 
 
 # now, run the mainloop