summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorPablo Galindo Salgado <Pablogsal@gmail.com>2021-11-21 02:06:16 (GMT)
committerGitHub <noreply@github.com>2021-11-21 02:06:16 (GMT)
commit4cf65240ae3fbd0e85d8b1e1a9e35f4065843c8c (patch)
tree6cd56532fcbdcc773b2b5dda0417d4b0b82c222b
parentc9c4444d9f11ae80c2c4cc7d40b6718419d81a97 (diff)
downloadcpython-4cf65240ae3fbd0e85d8b1e1a9e35f4065843c8c.zip
cpython-4cf65240ae3fbd0e85d8b1e1a9e35f4065843c8c.tar.gz
cpython-4cf65240ae3fbd0e85d8b1e1a9e35f4065843c8c.tar.bz2
Reactivate primary mechanism to retrieve frames in the gdb helpers (GH-29682)
-rwxr-xr-xTools/gdb/libpython.py10
1 files changed, 6 insertions, 4 deletions
diff --git a/Tools/gdb/libpython.py b/Tools/gdb/libpython.py
index 71c99b5..a105e58 100755
--- a/Tools/gdb/libpython.py
+++ b/Tools/gdb/libpython.py
@@ -1797,10 +1797,10 @@ class Frame(object):
def get_pyop(self):
try:
- # frame = self._gdbframe.read_var('frame')
- # frame = PyFramePtr(frame)
- # if not frame.is_optimized_out():
- # return frame
+ frame = self._gdbframe.read_var('frame')
+ frame = PyFramePtr(frame)
+ if not frame.is_optimized_out():
+ return frame
cframe = self._gdbframe.read_var('cframe')
if cframe is None:
return None
@@ -1865,6 +1865,7 @@ class Frame(object):
break
else:
sys.stdout.write('#%i (unable to read python frame information)\n' % self.get_index())
+ break
interp_frame = interp_frame.previous()
else:
info = self.is_other_python_frame()
@@ -1887,6 +1888,7 @@ class Frame(object):
break
else:
sys.stdout.write(' (unable to read python frame information)\n')
+ break
interp_frame = interp_frame.previous()
else:
info = self.is_other_python_frame()