#6719: In pdb, do not stop somewhere in the encodings machinery if the source file to be debugged is in a non-builtin encoding.

This commit is contained in:
Georg Brandl 2010-07-30 09:43:00 +00:00
parent 25fbb891d8
commit 34cc0f53be
2 changed files with 7 additions and 0 deletions

View File

@ -413,6 +413,8 @@ class Pdb(bdb.Bdb, cmd.Cmd):
def user_return(self, frame, return_value): def user_return(self, frame, return_value):
"""This function is called when a return trap is set here.""" """This function is called when a return trap is set here."""
if self._wait_for_mainpyfile:
return
frame.f_locals['__return__'] = return_value frame.f_locals['__return__'] = return_value
print('--Return--', file=self.stdout) print('--Return--', file=self.stdout)
self.interaction(frame, None) self.interaction(frame, None)
@ -420,6 +422,8 @@ class Pdb(bdb.Bdb, cmd.Cmd):
def user_exception(self, frame, exc_info): def user_exception(self, frame, exc_info):
"""This function is called if an exception occurs, """This function is called if an exception occurs,
but only if we are to stop at or just below this level.""" but only if we are to stop at or just below this level."""
if self._wait_for_mainpyfile:
return
exc_type, exc_value, exc_traceback = exc_info exc_type, exc_value, exc_traceback = exc_info
frame.f_locals['__exception__'] = exc_type, exc_value frame.f_locals['__exception__'] = exc_type, exc_value
exc_type_name = exc_type.__name__ exc_type_name = exc_type.__name__

View File

@ -475,6 +475,9 @@ C-API
Library Library
------- -------
- Issue #6719: In pdb, do not stop somewhere in the encodings machinery
if the source file to be debugged is in a non-builtin encoding.
- Issue #8048: Prevent doctests from failing when sys.displayhook has - Issue #8048: Prevent doctests from failing when sys.displayhook has
been reassigned. been reassigned.