aboutsummaryrefslogtreecommitdiffstats
path: root/vendor/ezyang/htmlpurifier/library/HTMLPurifier/Lexer/DOMLex.php
diff options
context:
space:
mode:
authorM. Dent <dentm42@gmail.com>2019-09-23 19:16:38 +0200
committerM. Dent <dentm42@gmail.com>2019-09-23 19:16:38 +0200
commita4f26034545911ff82d73d04517d5e68bf434924 (patch)
treeb5ca62e3ba9726324053418fffc970f5b61d1388 /vendor/ezyang/htmlpurifier/library/HTMLPurifier/Lexer/DOMLex.php
parentcc860b4a76139f5113b82c4f5bc2923da2f3c828 (diff)
parente37c43ea06deabe86bd0ec572a89e5159b4b6997 (diff)
downloadvolse-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.php19
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;