summaryrefslogtreecommitdiffstats
path: root/Objects
diff options
context:
space:
mode:
authorVictor Stinner <vstinner@python.org>2020-04-29 01:28:46 (GMT)
committerGitHub <noreply@github.com>2020-04-29 01:28:46 (GMT)
commit703647732359200c54f1d2e695cc3a06b9a96c9a (patch)
treef0ccd7a79f270fe9d7c3cba896461f3f7528131b /Objects
parent66abe98a816de84f89e2de4aa78cf09056227c25 (diff)
downloadcpython-703647732359200c54f1d2e695cc3a06b9a96c9a.zip
cpython-703647732359200c54f1d2e695cc3a06b9a96c9a.tar.gz
cpython-703647732359200c54f1d2e695cc3a06b9a96c9a.tar.bz2
bpo-40421: Add PyFrame_GetBack() function (GH-19765)
New PyFrame_GetBack() function: get the frame next outer frame. Replace frame->f_back with PyFrame_GetBack(frame) in most code but frameobject.c, ceval.c and genobject.c.
Diffstat (limited to 'Objects')
-rw-r--r--Objects/frameobject.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/Objects/frameobject.c b/Objects/frameobject.c
index 6d288b5..451c895 100644
--- a/Objects/frameobject.c
+++ b/Objects/frameobject.c
@@ -1237,3 +1237,13 @@ PyFrame_GetCode(PyFrameObject *frame)
Py_INCREF(code);
return code;
}
+
+
+PyFrameObject*
+PyFrame_GetBack(PyFrameObject *frame)
+{
+ assert(frame != NULL);
+ PyFrameObject *back = frame->f_back;
+ Py_XINCREF(back);
+ return back;
+}