577 @param exctb traceback for the exception |
577 @param exctb traceback for the exception |
578 @param unhandled flag indicating an uncaught exception |
578 @param unhandled flag indicating an uncaught exception |
579 """ |
579 """ |
580 if exctype in [SystemExit, bdb.BdbQuit]: |
580 if exctype in [SystemExit, bdb.BdbQuit]: |
581 atexit._run_exitfuncs() |
581 atexit._run_exitfuncs() |
|
582 if excval is None: |
|
583 excval = 0 |
|
584 elif isinstance(excval, (unicode, str)): |
|
585 self._dbgClient.write(excval) |
|
586 excval = 1 |
582 if isinstance(excval, int): |
587 if isinstance(excval, int): |
583 self._dbgClient.progTerminated(excval) |
588 self._dbgClient.progTerminated(excval) |
584 else: |
589 else: |
585 self._dbgClient.progTerminated(excval.code) |
590 self._dbgClient.progTerminated(excval.code) |
586 return |
591 return |