diff options
| author | Lex Neva <github.com@lexneva.name> | 2017-12-31 22:53:29 -0500 |
|---|---|---|
| committer | Lex Neva <github.com@lexneva.name> | 2017-12-31 22:55:57 -0500 |
| commit | 3cb4427fe6a5bdc83e08bc4e1c970598609a5f49 (patch) | |
| tree | f882711392876036eec04fada2d073f0435bb95b | |
| parent | 75241f5f9ddb1e48744878e987136224f9526845 (diff) | |
make debugging slightly easier by popping up traceback
| -rw-r--r-- | embroider_params.py | 15 |
1 files changed, 11 insertions, 4 deletions
diff --git a/embroider_params.py b/embroider_params.py index ffd9d53a..289f0d8e 100644 --- a/embroider_params.py +++ b/embroider_params.py @@ -403,9 +403,16 @@ class SettingsFrame(wx.Frame): try: self.simulate_window = EmbroiderySimulator(None, -1, "Embroidery Simulator", simulator_pos, size=(300, 300), patches=patches, on_close=self.simulate_window_closed, target_duration=5) except: - with open('/tmp/params_debug.log', 'a') as log: - print >> log, traceback.format_exc() - log.flush() + error = traceback.format_exc() + + try: + # a window may have been created, so we need to destroy it + # or the app will never exit + wx.Window.FindWindowByName("Embroidery Simulator").Destroy() + except: + pass + + info_dialog(self, error, "Internal Error") self.simulate_window.Show() wx.CallLater(10, self.Raise) @@ -731,7 +738,7 @@ def save_stderr(): def restore_stderr(): os.dup2(sys.stderr_dup, 2) sys.stderr_backup.write(sys.stderr.getvalue()) - sys.sys.stderr = stderr_backup + sys.stderr = stderr_backup # end of class MyFrame |
