mirror of https://github.com/python/cpython
While I was modifying test_trace, it threw an exception when I accidentally
made it try to set the line number from the trace callback for a 'call' event. This patch makes the error message a little more helpful in that case, and makes it a little less likely that a future editor will make the same mistake in test_trace.
This commit is contained in:
parent
fceb5d478f
commit
61328eef1f
|
@ -471,7 +471,7 @@ class JumpTracer:
|
||||||
def trace(self, frame, event, arg):
|
def trace(self, frame, event, arg):
|
||||||
if not self.done and frame.f_code == self.function.func_code:
|
if not self.done and frame.f_code == self.function.func_code:
|
||||||
firstLine = frame.f_code.co_firstlineno
|
firstLine = frame.f_code.co_firstlineno
|
||||||
if frame.f_lineno == firstLine + self.jumpFrom:
|
if event == 'line' and frame.f_lineno == firstLine + self.jumpFrom:
|
||||||
# Cope with non-integer self.jumpTo (because of
|
# Cope with non-integer self.jumpTo (because of
|
||||||
# no_jump_to_non_integers below).
|
# no_jump_to_non_integers below).
|
||||||
try:
|
try:
|
||||||
|
|
|
@ -127,7 +127,8 @@ frame_setlineno(PyFrameObject *f, PyObject* p_new_lineno)
|
||||||
if (!f->f_trace)
|
if (!f->f_trace)
|
||||||
{
|
{
|
||||||
PyErr_Format(PyExc_ValueError,
|
PyErr_Format(PyExc_ValueError,
|
||||||
"f_lineno can only be set by a trace function");
|
"f_lineno can only be set by a"
|
||||||
|
" line trace function");
|
||||||
return -1;
|
return -1;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue