vgetargskeywords: Removed all PyErr_Clear() calls. It's possible that
this routine will report an error now when it didn't before, but, if so, it's a legitimate error that should never have been suppressed.
This commit is contained in:
parent
077f574db1
commit
0af4916ad4
@ -1097,6 +1097,8 @@ vgetargskeywords(PyObject *args, PyObject *keywords, char *format,
|
|||||||
thiskw);
|
thiskw);
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
else if (PyErr_Occurred())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1107,10 +1109,11 @@ vgetargskeywords(PyObject *args, PyObject *keywords, char *format,
|
|||||||
for (i = nargs; i < min; i++) {
|
for (i = nargs; i < min; i++) {
|
||||||
if (PyDict_GetItemString(keywords, kwlist[i]))
|
if (PyDict_GetItemString(keywords, kwlist[i]))
|
||||||
len++;
|
len++;
|
||||||
|
else if (PyErr_Occurred())
|
||||||
|
return 0;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
PyErr_Clear();
|
|
||||||
|
|
||||||
/* make sure we got an acceptable number of arguments; the message
|
/* make sure we got an acceptable number of arguments; the message
|
||||||
is a little confusing with keywords since keyword arguments
|
is a little confusing with keywords since keyword arguments
|
||||||
which are supplied, but don't match the required arguments
|
which are supplied, but don't match the required arguments
|
||||||
@ -1159,7 +1162,7 @@ vgetargskeywords(PyObject *args, PyObject *keywords, char *format,
|
|||||||
"number of items in format string and keyword list do not match");
|
"number of items in format string and keyword list do not match");
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* convert the keyword arguments; this uses the format
|
/* convert the keyword arguments; this uses the format
|
||||||
string where it was left after processing args */
|
string where it was left after processing args */
|
||||||
converted = 0;
|
converted = 0;
|
||||||
@ -1178,8 +1181,9 @@ vgetargskeywords(PyObject *args, PyObject *keywords, char *format,
|
|||||||
}
|
}
|
||||||
converted++;
|
converted++;
|
||||||
}
|
}
|
||||||
|
else if (PyErr_Occurred())
|
||||||
|
return 0;
|
||||||
else {
|
else {
|
||||||
PyErr_Clear();
|
|
||||||
msg = skipitem(&format, p_va);
|
msg = skipitem(&format, p_va);
|
||||||
if (msg) {
|
if (msg) {
|
||||||
seterror(i+1, msg, levels, fname, message);
|
seterror(i+1, msg, levels, fname, message);
|
||||||
|
Loading…
x
Reference in New Issue
Block a user