Bug #1055168: calling pdb.set_trace() calls Bdb.set_trace, which made
the debugger enter inside pdb.set_trace. Patch #1061767: make pdb.set_trace enter enter at the stack frame calling pdb.set_trace().
This commit is contained in:
parent
e174ae9a1d
commit
84a6c205e3
10
Lib/bdb.py
10
Lib/bdb.py
|
@ -178,9 +178,13 @@ class Bdb:
|
|||
self.returnframe = frame
|
||||
self.quitting = 0
|
||||
|
||||
def set_trace(self):
|
||||
"""Start debugging from here."""
|
||||
frame = sys._getframe().f_back
|
||||
def set_trace(self, frame=None):
|
||||
"""Start debugging from `frame`.
|
||||
|
||||
If frame is not specified, debugging starts from caller's frame.
|
||||
"""
|
||||
if frame is None:
|
||||
frame = sys._getframe().f_back
|
||||
self.reset()
|
||||
while frame:
|
||||
frame.f_trace = self.trace_dispatch
|
||||
|
|
|
@ -997,7 +997,7 @@ def runcall(*args, **kwds):
|
|||
return Pdb().runcall(*args, **kwds)
|
||||
|
||||
def set_trace():
|
||||
Pdb().set_trace()
|
||||
Pdb().set_trace(sys._getframe().f_back)
|
||||
|
||||
# Post-Mortem interface
|
||||
|
||||
|
|
Loading…
Reference in New Issue