MCPcopy Create free account
hub / github.com/fabioz/PyDev.Debugger / cont

Method cont

pydevd_attach_to_process/winappdbg/debug.py:914–967  ·  view source on GitHub ↗

Resumes execution after processing a debug event. @see: dispatch(), loop(), wait() @type event: L{Event} @param event: (Optional) Event object returned by L{wait}. @raise WindowsError: Raises an exception on error.

(self, event=None)

Source from the content-addressed store, hash-verified

912 return EventDispatcher.dispatch(self, event)
913
914 def cont(self, event=None):
915 """
916 Resumes execution after processing a debug event.
917
918 @see: dispatch(), loop(), wait()
919
920 @type event: L{Event}
921 @param event: (Optional) Event object returned by L{wait}.
922
923 @raise WindowsError: Raises an exception on error.
924 """
925
926 # If no event object was given, use the last event.
927 if event is None:
928 event = self.lastEvent
929
930 # Ignore dummy events.
931 if not event:
932 return
933
934 # Get the event continue status information.
935 dwProcessId = event.get_pid()
936 dwThreadId = event.get_tid()
937 dwContinueStatus = event.continueStatus
938
939 # Check if the process is still being debugged.
940 if self.is_debugee(dwProcessId):
941 # Try to flush the instruction cache.
942 try:
943 if self.system.has_process(dwProcessId):
944 aProcess = self.system.get_process(dwProcessId)
945 else:
946 aProcess = Process(dwProcessId)
947 aProcess.flush_instruction_cache()
948 except WindowsError:
949 pass
950
951 # XXX TODO
952 #
953 # Try to execute the UnhandledExceptionFilter for second chance
954 # exceptions, at least when in hostile mode (in normal mode it
955 # would be breaking compatibility, as users may actually expect
956 # second chance exceptions to be raised again).
957 #
958 # Reportedly in Windows 7 (maybe in Vista too) this seems to be
959 # happening already. In XP and below the UnhandledExceptionFilter
960 # was never called for processes being debugged.
961
962 # Continue execution of the debugee.
963 win32.ContinueDebugEvent(dwProcessId, dwThreadId, dwContinueStatus)
964
965 # If the event is the last event, forget it.
966 if event == self.lastEvent:
967 self.lastEvent = None
968
969 def stop(self, bIgnoreExceptions=True):
970 """

Callers 4

detachMethod · 0.95
stopMethod · 0.95
nextMethod · 0.95
loopMethod · 0.80

Calls 7

is_debugeeMethod · 0.95
ProcessClass · 0.90
has_processMethod · 0.80
get_pidMethod · 0.45
get_tidMethod · 0.45
get_processMethod · 0.45

Tested by

no test coverage detected