844 |
844 |
845 self.currentFrame = frlist[0] |
845 self.currentFrame = frlist[0] |
846 |
846 |
847 stack = self.getStack(frlist[self.skipFrames:]) |
847 stack = self.getStack(frlist[self.skipFrames:]) |
848 |
848 |
|
849 self.isBroken = True |
|
850 self._dbgClient.lockClient() |
|
851 self._dbgClient.currentThread = self |
|
852 self._dbgClient.currentThreadExec = self |
849 self._dbgClient.sendException(exctypetxt, excvaltxt, stack) |
853 self._dbgClient.sendException(exctypetxt, excvaltxt, stack) |
850 |
854 self._dbgClient.dumpThreadList() |
851 if exctb is None: |
855 |
852 return |
856 if exctb is not None: |
853 |
857 # When polling kept enabled, it isn't possible to resume after an |
854 self._dbgClient.eventLoop() |
858 # unhandled exception without further user interaction. |
|
859 self._dbgClient.eventLoop(True) |
|
860 |
855 self.skipFrames = 0 |
861 self.skipFrames = 0 |
856 |
862 |
|
863 self.isBroken = False |
|
864 self.eventPollFlag = False |
|
865 self._dbgClient.unlockClient() |
|
866 |
857 def __extractExceptionName(self, exctype): |
867 def __extractExceptionName(self, exctype): |
858 """ |
868 """ |
859 Private method to extract the exception name given the exception |
869 Private method to extract the exception name given the exception |
860 type object. |
870 type object. |
861 |
871 |