diff options
author | Christian Heimes <christian@python.org> | 2021-03-08 11:25:48 +0100 |
---|---|---|
committer | Christian Heimes <christian@python.org> | 2021-03-08 11:30:31 +0100 |
commit | 35ebedca6fb072b25a177d5446f9a1bf176d581a (patch) | |
tree | ca05548088327a20584cb39996b250af5d31bb9e /defusedxml/ElementTree.py | |
parent | 1ac00c6dcb7696b960611ebdd80964907d7d07ae (diff) | |
download | defusedxml-git-35ebedca6fb072b25a177d5446f9a1bf176d581a.tar.gz |
Fix regression defusedxml.ElementTree.ParseError
The ``defusedxml.ElementTree.ParseError`` exception is now the same class object
as ``xml.etree.ElementTree.ParseError`` again. The regression was
introduced by new patching code as part of PR #60.
See: https://github.com/tiran/defusedxml/pull/60
Fixes: https://github.com/tiran/defusedxml/issues/63
Signed-off-by: Christian Heimes <christian@python.org>
Diffstat (limited to 'defusedxml/ElementTree.py')
-rw-r--r-- | defusedxml/ElementTree.py | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/defusedxml/ElementTree.py b/defusedxml/ElementTree.py index 7209661..15c179f 100644 --- a/defusedxml/ElementTree.py +++ b/defusedxml/ElementTree.py @@ -9,6 +9,7 @@ from __future__ import print_function, absolute_import import sys import warnings +from xml.etree.ElementTree import ParseError from xml.etree.ElementTree import TreeBuilder as _TreeBuilder from xml.etree.ElementTree import parse as _parse from xml.etree.ElementTree import tostring @@ -51,12 +52,13 @@ def _get_py3_cls(): _XMLParser = pure_pymod.XMLParser _iterparse = pure_pymod.iterparse - ParseError = pure_pymod.ParseError + # patch pure module to use ParseError from C extension + pure_pymod.ParseError = ParseError - return _XMLParser, _iterparse, ParseError + return _XMLParser, _iterparse -_XMLParser, _iterparse, ParseError = _get_py3_cls() +_XMLParser, _iterparse = _get_py3_cls() _sentinel = object() |