diff options
Diffstat (limited to 'Modules')
-rw-r--r-- | Modules/_elementtree.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Modules/_elementtree.c b/Modules/_elementtree.c index 28d0181..bddac85 100644 --- a/Modules/_elementtree.c +++ b/Modules/_elementtree.c @@ -3411,7 +3411,11 @@ xmlparser_gc_traverse(XMLParserObject *self, visitproc visit, void *arg) static int xmlparser_gc_clear(XMLParserObject *self) { - EXPAT(ParserFree)(self->parser); + if (self->parser != NULL) { + XML_Parser parser = self->parser; + self->parser = NULL; + EXPAT(ParserFree)(parser); + } Py_CLEAR(self->handle_close); Py_CLEAR(self->handle_pi); |