def on_legacyRemoteDebuggerAttach(self, request, args): if self.__waiting_for_authentication: self.send_response( request, success=False, message= 'legacyRemoteDebuggerAuthenticate request must be sent first.', ) self.set_exit() return try: debug_options = vspd.parse_debug_options(args['debugOptions']) if self.__redirect_output: debug_options.add('RedirectOutput') if vspd.DETACHED: try: pid = os.getpid() except AttributeError: pid = 0 major, minor, micro, release_level, serial = sys.version_info self.send_response( request, accepted=True, processId=pid, pythonMajor=major, pythonMinor=minor, pythonMicro=micro, ) vspd.attach_process_from_socket(self.__owned_socket, debug_options, report=True) vspd.mark_all_threads_for_break(vspd.STEPPING_ATTACH_BREAK) _attached.set() # Prevent from closing the socket, it will be used by debugger self.__owned_socket = None else: self.send_response( request, accepted=False, ) finally: self.set_exit()
def on_legacyRemoteDebuggerAttach(self, request, args): if self.__waiting_for_authentication: self.send_response( request, success=False, message='legacyRemoteDebuggerAuthenticate request must be sent first.', ) self.set_exit() return try: debug_options = vspd.parse_debug_options(args['debugOptions']) if self.__redirect_output: debug_options.add('RedirectOutput') if vspd.DETACHED: try: pid = os.getpid() except AttributeError: pid = 0 major, minor, micro, release_level, serial = sys.version_info self.send_response( request, accepted=True, processId=pid, pythonMajor=major, pythonMinor=minor, pythonMicro=micro, ) vspd.attach_process_from_socket(self.__owned_socket, debug_options, report = True) vspd.mark_all_threads_for_break(vspd.STEPPING_ATTACH_BREAK) _attached.set() # Prevent from closing the socket, it will be used by debugger self.__owned_socket = None else: self.send_response( request, accepted=False, ) finally: self.set_exit()
def break_into_debugger(): if not vspd.DETACHED: vspd.SEND_BREAK_COMPLETE = thread.get_ident() vspd.mark_all_threads_for_break()
def break_into_debugger(): if not vspd.DETACHED: vspd.SEND_BREAK_COMPLETE = thread.get_ident() vspd.mark_all_threads_for_break()