DebugClients/Python/DebugBase.py

branch
debugger fine grinding
changeset 5538
d6de2206af1e
parent 5537
706ac32a4538
child 5539
05b365ba9f55
equal deleted inserted replaced
5537:706ac32a4538 5538:d6de2206af1e
421 frame.f_trace = self.trace_dispatch 421 frame.f_trace = self.trace_dispatch
422 422
423 target(*args, **kwargs) 423 target(*args, **kwargs)
424 except SystemExit: 424 except SystemExit:
425 pass 425 pass
426 except Exception:
427 excinfo = sys.exc_info()
428 self.user_exception(excinfo, True)
426 finally: 429 finally:
430 sys.settrace(None)
427 sys.setprofile(None) 431 sys.setprofile(None)
428 432
429 def run(self, cmd, globals=None, locals=None): 433 def run(self, cmd, globals=None, locals=None):
430 """ 434 """
431 Public method to start a given command under debugger control. 435 Public method to start a given command under debugger control.
455 except SystemExit: 459 except SystemExit:
456 atexit._run_exitfuncs() 460 atexit._run_exitfuncs()
457 excinfo = sys.exc_info() 461 excinfo = sys.exc_info()
458 exitcode, message = self.__extractSystemExitMessage(excinfo) 462 exitcode, message = self.__extractSystemExitMessage(excinfo)
459 self._dbgClient.progTerminated(exitcode, message) 463 self._dbgClient.progTerminated(exitcode, message)
464 except Exception:
465 excinfo = sys.exc_info()
466 self.user_exception(excinfo, True)
460 finally: 467 finally:
461 self.quitting = True 468 self.quitting = True
462 sys.settrace(None) 469 sys.settrace(None)
463 470
464 def _set_stopinfo(self, stopframe, returnframe): 471 def _set_stopinfo(self, stopframe, returnframe):

eric ide

mercurial