Skip to content

Commit 84780ea

Browse files
Refactor: replace query with parameter
Pass state as arg to expat_set_error()
1 parent 71fdccd commit 84780ea

File tree

1 file changed

+6
-4
lines changed

1 file changed

+6
-4
lines changed

Modules/_elementtree.c

Lines changed: 6 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3071,11 +3071,10 @@ makeuniversal(XMLParserObject* self, const char* string)
30713071
* message string is the default for the given error_code.
30723072
*/
30733073
static void
3074-
expat_set_error(enum XML_Error error_code, Py_ssize_t line, Py_ssize_t column,
3075-
const char *message)
3074+
expat_set_error(elementtreestate *st, enum XML_Error error_code,
3075+
Py_ssize_t line, Py_ssize_t column, const char *message)
30763076
{
30773077
PyObject *errmsg, *error, *position, *code;
3078-
elementtreestate *st = ET_STATE_GLOBAL;
30793078

30803079
errmsg = PyUnicode_FromFormat("%s: line %zd, column %zd",
30813080
message ? message : EXPAT(ErrorString)(error_code),
@@ -3140,8 +3139,8 @@ expat_default_handler(XMLParserObject* self, const XML_Char* data_in,
31403139

31413140
value = PyDict_GetItemWithError(self->entity, key);
31423141

3142+
elementtreestate *st = ET_STATE_GLOBAL;
31433143
if (value) {
3144-
elementtreestate *st = ET_STATE_GLOBAL;
31453144
if (TreeBuilder_CheckExact(st, self->target))
31463145
res = treebuilder_handle_data(
31473146
(TreeBuilderObject*) self->target, value
@@ -3156,6 +3155,7 @@ expat_default_handler(XMLParserObject* self, const XML_Char* data_in,
31563155
char message[128] = "undefined entity ";
31573156
strncat(message, data_in, data_len < 100?data_len:100);
31583157
expat_set_error(
3158+
st,
31593159
XML_ERROR_UNDEFINED_ENTITY,
31603160
EXPAT(GetErrorLineNumber)(self->parser),
31613161
EXPAT(GetErrorColumnNumber)(self->parser),
@@ -3764,7 +3764,9 @@ expat_parse(XMLParserObject* self, const char* data, int data_len, int final)
37643764
return NULL;
37653765

37663766
if (!ok) {
3767+
elementtreestate *st = ET_STATE_GLOBAL;
37673768
expat_set_error(
3769+
st,
37683770
EXPAT(GetErrorCode)(self->parser),
37693771
EXPAT(GetErrorLineNumber)(self->parser),
37703772
EXPAT(GetErrorColumnNumber)(self->parser),

0 commit comments

Comments
 (0)