606 |
607 |
607 if int(erase): |
608 if int(erase): |
608 self.cover.erase() |
609 self.cover.erase() |
609 sys.modules['__main__'] = self.debugMod |
610 sys.modules['__main__'] = self.debugMod |
610 self.debugMod.__dict__['__file__'] = sys.argv[0] |
611 self.debugMod.__dict__['__file__'] = sys.argv[0] |
611 self.cover.start() |
612 fp = open(sys.argv[0], encoding=self.__coding) |
612 exec(open(sys.argv[0], encoding=self.__coding).read(), |
613 try: |
613 self.debugMod.__dict__) |
614 script = fp.read() |
614 self.cover.stop() |
615 finally: |
615 self.cover.save() |
616 fp.close() |
616 self.writestream.flush() |
617 if script: |
|
618 if not script.endswith('\n'): |
|
619 script += '\n' |
|
620 code = compile(script, sys.argv[0], 'exec') |
|
621 self.cover.start() |
|
622 try: |
|
623 exec(code, self.debugMod.__dict__) |
|
624 except SystemExit: |
|
625 atexit._run_exitfuncs() |
|
626 self.cover.stop() |
|
627 self.cover.save() |
|
628 self.writestream.flush() |
617 return |
629 return |
618 |
630 |
619 if cmd == DebugProtocol.RequestShutdown: |
631 if cmd == DebugProtocol.RequestShutdown: |
620 self.sessionClose() |
632 self.sessionClose() |
621 return |
633 return |