_OutputRedirectingPdb.trace_dispatch(): Return the base class's
trace_dispatch() result in a more obvious, and more robust way.
diff --git a/Lib/doctest.py b/Lib/doctest.py
index fb4f01b..c6677f7 100644
--- a/Lib/doctest.py
+++ b/Lib/doctest.py
@@ -348,10 +348,11 @@
save_stdout = sys.stdout
sys.stdout = self.__out
# Call Pdb's trace dispatch method.
- result = pdb.Pdb.trace_dispatch(self, *args)
- # Restore stdout.
- sys.stdout = save_stdout
- return result
+ try:
+ return pdb.Pdb.trace_dispatch(self, *args)
+ finally:
+ # Restore stdout.
+ sys.stdout = save_stdout
# [XX] Normalize with respect to os.path.pardir?
def _module_relative_path(module, path):