diff options
author | Andrew Dolgov <[email protected]> | 2019-03-22 14:56:53 +0300 |
---|---|---|
committer | Andrew Dolgov <[email protected]> | 2019-03-22 14:56:53 +0300 |
commit | 59d0e35b7d9f2e656f33052eca62b5bd7afef591 (patch) | |
tree | ba089e123bd538b325d670ac31fe65852c0d02b7 /include | |
parent | b583ca12fb1f6fdf02a15762ee7036b2ec653c27 (diff) | |
parent | 671f4cee657f36881eeeea7e5d314034252e3ee7 (diff) |
Merge branch 'master' of git.fakecake.org:tt-rss
Diffstat (limited to 'include')
-rwxr-xr-x | include/functions.php | 20 |
1 files changed, 5 insertions, 15 deletions
diff --git a/include/functions.php b/include/functions.php index 5ebd4e0ff..d59e79126 100755 --- a/include/functions.php +++ b/include/functions.php @@ -562,7 +562,7 @@ libxml_use_internal_errors(true); $doc = new DOMDocument(); - $doc->loadHTML($html); + $doc->loadHTML('<?xml encoding="UTF-8">' . $html); $xpath = new DOMXPath($doc); $base = $xpath->query('/html/head/base[@href]'); @@ -1518,14 +1518,10 @@ // plugins work on original source URLs used before caching function rewrite_cached_urls($str) { - $charset_hack = '<head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> - </head>'; - $res = trim($str); if (!$res) return ''; $doc = new DOMDocument(); - $doc->loadHTML($charset_hack . $res); + $doc->loadHTML('<?xml encoding="UTF-8">' . $res); $xpath = new DOMXPath($doc); $entries = $xpath->query('(//img[@src]|//picture/source[@src]|//video[@poster]|//video/source[@src]|//audio/source[@src])'); @@ -1580,16 +1576,10 @@ $res = trim($str); if (!$res) return ''; - $charset_hack = '<head> - <meta http-equiv="Content-Type" content="text/html; charset=utf-8"/> - </head>'; - - $res = trim($res); if (!$res) return ''; - libxml_use_internal_errors(true); $doc = new DOMDocument(); - $doc->loadHTML($charset_hack . $res); + $doc->loadHTML('<?xml encoding="UTF-8">' . $res); $xpath = new DOMXPath($doc); $rewrite_base_url = $site_url ? $site_url : get_self_url_prefix(); @@ -2115,7 +2105,7 @@ libxml_use_internal_errors(true); $doc = new DOMDocument(); - $doc->loadHTML($content); + $doc->loadHTML('<?xml encoding="UTF-8">' . $content); $xpath = new DOMXPath($doc); $entries = $xpath->query('/html/head/link[@rel="alternate" and '. '(contains(@type,"rss") or contains(@type,"atom"))]|/html/head/link[@rel="feed"]'); @@ -2136,7 +2126,7 @@ } function is_html($content) { - return preg_match("/<html|DOCTYPE html/i", substr($content, 0, 100)) !== 0; + return preg_match("/<html|DOCTYPE html/i", substr($content, 0, 8192)) !== 0; } function url_is_html($url, $login = false, $pass = false) { |