Browse Source

catch some exceptions during GUI init

3.1
SomberNight 7 years ago
parent
commit
fe1e412f01
  1. 12
      gui/qt/__init__.py
  2. 8
      lib/daemon.py

12
gui/qt/__init__.py

@ -195,7 +195,8 @@ class ElectrumGui:
wallet = self.daemon.load_wallet(path, None) wallet = self.daemon.load_wallet(path, None)
except BaseException as e: except BaseException as e:
traceback.print_exc(file=sys.stdout) traceback.print_exc(file=sys.stdout)
d = QMessageBox(QMessageBox.Warning, _('Error'), 'Cannot load wallet:\n' + str(e)) d = QMessageBox(QMessageBox.Warning, _('Error'),
_('Cannot load wallet:') + '\n' + str(e))
d.exec_() d.exec_()
return return
if not wallet: if not wallet:
@ -212,7 +213,14 @@ class ElectrumGui:
return return
wallet.start_threads(self.daemon.network) wallet.start_threads(self.daemon.network)
self.daemon.add_wallet(wallet) self.daemon.add_wallet(wallet)
w = self.create_window_for_wallet(wallet) try:
w = self.create_window_for_wallet(wallet)
except BaseException as e:
traceback.print_exc(file=sys.stdout)
d = QMessageBox(QMessageBox.Warning, _('Error'),
_('Cannot create window for wallet:') + '\n' + str(e))
d.exec_()
return
if uri: if uri:
w.pay_to_URI(uri) w.pay_to_URI(uri)
w.bring_to_top() w.bring_to_top()

8
lib/daemon.py

@ -25,6 +25,8 @@
import ast import ast
import os import os
import time import time
import traceback
import sys
# from jsonrpc import JSONRPCResponseManager # from jsonrpc import JSONRPCResponseManager
import jsonrpclib import jsonrpclib
@ -300,4 +302,8 @@ class Daemon(DaemonThread):
gui_name = 'qt' gui_name = 'qt'
gui = __import__('electrum_gui.' + gui_name, fromlist=['electrum_gui']) gui = __import__('electrum_gui.' + gui_name, fromlist=['electrum_gui'])
self.gui = gui.ElectrumGui(config, self, plugins) self.gui = gui.ElectrumGui(config, self, plugins)
self.gui.main() try:
self.gui.main()
except BaseException as e:
traceback.print_exc(file=sys.stdout)
# app will exit now

Loading…
Cancel
Save