diff options
author | Geoffrey Sneddon <me@gsnedders.com> | 2015-12-08 16:02:57 +0000 |
---|---|---|
committer | Geoffrey Sneddon <me@gsnedders.com> | 2015-12-08 16:02:57 +0000 |
commit | a07a28ac10e5686d096fd0f4225e01ff137ec80f (patch) | |
tree | 06f1da2dd59aae973c0a4047f89f83d8c68f82bf /bs4/builder/_html5lib.py | |
parent | 6780794cdcc52305691f7a299015bfb9b5941e27 (diff) |
Fix foster parenting with html5lib.
This makes all of the html5lib tests pass. Yay!
Diffstat (limited to 'bs4/builder/_html5lib.py')
-rw-r--r-- | bs4/builder/_html5lib.py | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/bs4/builder/_html5lib.py b/bs4/builder/_html5lib.py index a535747..755518d 100644 --- a/bs4/builder/_html5lib.py +++ b/bs4/builder/_html5lib.py @@ -217,8 +217,10 @@ class Element(html5lib.treebuilders._base.Node): child = node elif node.element.__class__ == NavigableString: string_child = child = node.element + node.parent = self else: child = node.element + node.parent = self if not isinstance(child, basestring) and child.parent is not None: node.element.extract() @@ -283,11 +285,11 @@ class Element(html5lib.treebuilders._base.Node): attributes = property(getAttributes, setAttributes) def insertText(self, data, insertBefore=None): + text = TextNode(self.soup.new_string(data), self.soup) if insertBefore: - text = TextNode(self.soup.new_string(data), self.soup) - self.insertBefore(data, insertBefore) + self.insertBefore(text, insertBefore) else: - self.appendChild(data) + self.appendChild(text) def insertBefore(self, node, refNode): index = self.element.index(refNode.element) |