Fix T97731: Python traceback no longer includes line-numbers

Regression caused by [0] that caused the error message to be
created based on a normalized exception (which hid line numbers).

PyC_ExceptionBuffer{_Simple} & BPy_errors_to_report
no longer clears the exception.

This could have been resolved by changing python_script_error_jump
however that would involve changes to reference counting that are more
risky (noted in code-comment).

[0]: 2d2baeaf04
This commit is contained in:
2022-05-03 17:54:37 +10:00
parent a821a2db3d
commit 74dfb7ca23
7 changed files with 26 additions and 16 deletions

View File

@@ -2051,6 +2051,7 @@ static int pyrna_py_to_prop(
&itemptr, item, true, "Converting a Python list to an RNA collection") == -1) {
PyObject *msg = PyC_ExceptionBuffer();
const char *msg_char = PyUnicode_AsUTF8(msg);
PyErr_Clear();
PyErr_Format(PyExc_TypeError,
"%.200s %.200s.%.200s error converting a member of a collection "