catch some exceptions during GUI init
This commit is contained in:
@@ -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()
|
||||||
|
|||||||
@@ -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
|
||||||
|
|||||||
Reference in New Issue
Block a user