summaryrefslogtreecommitdiffstats
path: root/Python
diff options
context:
space:
mode:
authorSerhiy Storchaka <storchaka@gmail.com>2021-10-04 12:01:11 (GMT)
committerGitHub <noreply@github.com>2021-10-04 12:01:11 (GMT)
commitb5499784ec0aa24c8f0d91f2317cc53b7743ada9 (patch)
treea136bc5dc197cf3041bb6c234ea663debd2d631c /Python
parentf146ca36f81075f222aa3a1595042597d96dfad3 (diff)
downloadcpython-b5499784ec0aa24c8f0d91f2317cc53b7743ada9.zip
cpython-b5499784ec0aa24c8f0d91f2317cc53b7743ada9.tar.gz
cpython-b5499784ec0aa24c8f0d91f2317cc53b7743ada9.tar.bz2
[3.10] bpo-45355: Use sizeof(_Py_CODEUNIT) instead of literal 2 for the size of the code unit (GH-28711). (GH-28718)
(cherry picked from commit 60b9e040c9cf40e69f42c0008e564458aa0379e8)
Diffstat (limited to 'Python')
-rw-r--r--Python/ceval.c8
-rw-r--r--Python/traceback.c2
2 files changed, 5 insertions, 5 deletions
diff --git a/Python/ceval.c b/Python/ceval.c
index 686250e..624baf5 100644
--- a/Python/ceval.c
+++ b/Python/ceval.c
@@ -5490,7 +5490,7 @@ call_trace(Py_tracefunc func, PyObject *obj,
}
else {
initialize_trace_info(trace_info, frame);
- frame->f_lineno = _PyCode_CheckLineNumber(frame->f_lasti*2, &trace_info->bounds);
+ frame->f_lineno = _PyCode_CheckLineNumber(frame->f_lasti*sizeof(_Py_CODEUNIT), &trace_info->bounds);
}
result = func(obj, frame, what, arg);
frame->f_lineno = 0;
@@ -5530,8 +5530,8 @@ maybe_call_line_trace(Py_tracefunc func, PyObject *obj,
then call the trace function if we're tracing source lines.
*/
initialize_trace_info(trace_info, frame);
- int lastline = _PyCode_CheckLineNumber(instr_prev*2, &trace_info->bounds);
- int line = _PyCode_CheckLineNumber(frame->f_lasti*2, &trace_info->bounds);
+ int lastline = _PyCode_CheckLineNumber(instr_prev*sizeof(_Py_CODEUNIT), &trace_info->bounds);
+ int line = _PyCode_CheckLineNumber(frame->f_lasti*sizeof(_Py_CODEUNIT), &trace_info->bounds);
if (line != -1 && frame->f_trace_lines) {
/* Trace backward edges or if line number has changed */
if (frame->f_lasti < instr_prev || line != lastline) {
@@ -6494,7 +6494,7 @@ maybe_dtrace_line(PyFrameObject *frame,
instruction window, reset the window.
*/
initialize_trace_info(trace_info, frame);
- int line = _PyCode_CheckLineNumber(frame->f_lasti*2, &trace_info->bounds);
+ int line = _PyCode_CheckLineNumber(frame->f_lasti*sizeof(_Py_CODEUNIT), &trace_info->bounds);
/* If the last instruction falls at the start of a line or if
it represents a jump backwards, update the frame's line
number and call the trace function. */
diff --git a/Python/traceback.c b/Python/traceback.c
index 9b23f45..284c181 100644
--- a/Python/traceback.c
+++ b/Python/traceback.c
@@ -234,7 +234,7 @@ _PyTraceBack_FromFrame(PyObject *tb_next, PyFrameObject *frame)
assert(tb_next == NULL || PyTraceBack_Check(tb_next));
assert(frame != NULL);
- return tb_create_raw((PyTracebackObject *)tb_next, frame, frame->f_lasti*2,
+ return tb_create_raw((PyTracebackObject *)tb_next, frame, frame->f_lasti*sizeof(_Py_CODEUNIT),
PyFrame_GetLineNumber(frame));
}