Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
C
cpython
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Kirill Smelkov
cpython
Commits
20c1cdd6
Commit
20c1cdd6
authored
May 18, 2013
by
Eli Bendersky
Browse files
Options
Browse Files
Download
Plain Diff
Issue #17901: fix TreeBuilder construction for an explicit element_factory=None
Based on report and patch by Aaron Oakley.
parents
10e8c49a
08231a9c
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
8 additions
and
1 deletion
+8
-1
Lib/test/test_xml_etree.py
Lib/test/test_xml_etree.py
+6
-0
Misc/ACKS
Misc/ACKS
+1
-0
Modules/_elementtree.c
Modules/_elementtree.c
+1
-1
No files found.
Lib/test/test_xml_etree.py
View file @
20c1cdd6
...
...
@@ -1896,6 +1896,12 @@ class TreeBuilderTest(unittest.TestCase):
parser
.
feed
(
self
.
sample1
)
self
.
assertIsNone
(
parser
.
close
())
def
test_treebuilder_elementfactory_none
(
self
):
parser
=
ET
.
XMLParser
(
target
=
ET
.
TreeBuilder
(
element_factory
=
None
))
parser
.
feed
(
self
.
sample1
)
e
=
parser
.
close
()
self
.
_check_sample1_element
(
e
)
def
test_subclass
(
self
):
class
MyTreeBuilder
(
ET
.
TreeBuilder
):
def
foobar
(
self
,
x
):
...
...
Misc/ACKS
View file @
20c1cdd6
...
...
@@ -905,6 +905,7 @@ John O'Connor
Kevin O'Connor
Tim O'Malley
Zooko O'Whielacronx
Aaron Oakley
James Oakley
Jon Oberheide
Pascal Oberndoerfer
...
...
Modules/_elementtree.c
View file @
20c1cdd6
...
...
@@ -2341,7 +2341,7 @@ treebuilder_handle_start(TreeBuilderObject* self, PyObject* tag,
self
->
data
=
NULL
;
}
if
(
self
->
element_factory
)
{
if
(
self
->
element_factory
&&
self
->
element_factory
!=
Py_None
)
{
node
=
PyObject_CallFunction
(
self
->
element_factory
,
"OO"
,
tag
,
attrib
);
}
else
{
node
=
create_new_element
(
tag
,
attrib
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment