diff options
author | M. Dent <dentm42@gmail.com> | 2019-09-23 19:16:38 +0200 |
---|---|---|
committer | M. Dent <dentm42@gmail.com> | 2019-09-23 19:16:38 +0200 |
commit | a4f26034545911ff82d73d04517d5e68bf434924 (patch) | |
tree | b5ca62e3ba9726324053418fffc970f5b61d1388 /vendor/ezyang/htmlpurifier/library/HTMLPurifier/Lexer/DOMLex.php | |
parent | cc860b4a76139f5113b82c4f5bc2923da2f3c828 (diff) | |
parent | e37c43ea06deabe86bd0ec572a89e5159b4b6997 (diff) | |
download | volse-hubzilla-a4f26034545911ff82d73d04517d5e68bf434924.tar.gz volse-hubzilla-a4f26034545911ff82d73d04517d5e68bf434924.tar.bz2 volse-hubzilla-a4f26034545911ff82d73d04517d5e68bf434924.zip |
Merge branch 'cherry-pick-a34ce790' into 'dev'
composer update ezyang/htmlpurifier
See merge request hubzilla/core!1732
Diffstat (limited to 'vendor/ezyang/htmlpurifier/library/HTMLPurifier/Lexer/DOMLex.php')
-rw-r--r-- | vendor/ezyang/htmlpurifier/library/HTMLPurifier/Lexer/DOMLex.php | 19 |
1 files changed, 12 insertions, 7 deletions
diff --git a/vendor/ezyang/htmlpurifier/library/HTMLPurifier/Lexer/DOMLex.php b/vendor/ezyang/htmlpurifier/library/HTMLPurifier/Lexer/DOMLex.php index 6238a99e3..b573426de 100644 --- a/vendor/ezyang/htmlpurifier/library/HTMLPurifier/Lexer/DOMLex.php +++ b/vendor/ezyang/htmlpurifier/library/HTMLPurifier/Lexer/DOMLex.php @@ -68,8 +68,13 @@ class HTMLPurifier_Lexer_DOMLex extends HTMLPurifier_Lexer $doc = new DOMDocument(); $doc->encoding = 'UTF-8'; // theoretically, the above has this covered + $options = 0; + if ($config->get('Core.AllowParseManyTags') && defined('LIBXML_PARSEHUGE')) { + $options |= LIBXML_PARSEHUGE; + } + set_error_handler(array($this, 'muteErrorHandler')); - $doc->loadHTML($html); + $doc->loadHTML($html, $options); restore_error_handler(); $body = $doc->getElementsByTagName('html')->item(0)-> // <html> @@ -133,11 +138,11 @@ class HTMLPurifier_Lexer_DOMLex extends HTMLPurifier_Lexer */ protected function getTagName($node) { - if (property_exists($node, 'tagName')) { + if (isset($node->tagName)) { return $node->tagName; - } else if (property_exists($node, 'nodeName')) { + } else if (isset($node->nodeName)) { return $node->nodeName; - } else if (property_exists($node, 'localName')) { + } else if (isset($node->localName)) { return $node->localName; } return null; @@ -150,11 +155,11 @@ class HTMLPurifier_Lexer_DOMLex extends HTMLPurifier_Lexer */ protected function getData($node) { - if (property_exists($node, 'data')) { + if (isset($node->data)) { return $node->data; - } else if (property_exists($node, 'nodeValue')) { + } else if (isset($node->nodeValue)) { return $node->nodeValue; - } else if (property_exists($node, 'textContent')) { + } else if (isset($node->textContent)) { return $node->textContent; } return null; |