Browse Source

crash reporting: catch exceptions from requests.post

master
SomberNight 8 years ago committed by Johann Bauer
parent
commit
febaedcd36
  1. 12
      gui/qt/exception_window.py

12
gui/qt/exception_window.py

@ -107,12 +107,20 @@ class Exception_Window(QWidget):
def send_report(self):
if bitcoin.NetworkConstants.GENESIS[-4:] not in ["4943", "e26f"] and ".electrum.org" in report_server:
# Gah! Some kind of altcoin wants to send us crash reports.
self.main_window.show_critical("Please report this issue manually.")
self.main_window.show_critical(_("Please report this issue manually."))
return
report = self.get_traceback_info()
report.update(self.get_additional_info())
report = json.dumps(report)
response = requests.post(report_server, data=report)
try:
response = requests.post(report_server, data=report, timeout=20)
except BaseException as e:
traceback.print_exc(file=sys.stderr)
self.main_window.show_critical(_('There was a problem with the automatic reporting:') + '\n' +
str(e) + '\n' +
_("Please report this issue manually."))
return
else:
QMessageBox.about(self, "Crash report", response.text)
self.close()

Loading…
Cancel
Save