summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndrew Dolgov <[email protected]>2021-11-15 08:26:02 +0300
committerAndrew Dolgov <[email protected]>2021-11-15 08:26:02 +0300
commitaa924d9ee7674cfe649d498ce3cbcdb093bca956 (patch)
treeb110e547ade2d043bca294ecb5af4b96fba365b9
parenta92070da068f1c4be7a35c7f92a5905c1307335b (diff)
deal with several DOMElement-related errors
-rwxr-xr-xclasses/article.php1
-rw-r--r--classes/feedparser.php8
-rwxr-xr-xplugins/af_comics/filters/af_comics_comicpress.php2
-rw-r--r--plugins/af_comics/filters/af_comics_dilbert.php2
-rw-r--r--plugins/af_comics/filters/af_comics_gocomics.php1
5 files changed, 9 insertions, 5 deletions
diff --git a/classes/article.php b/classes/article.php
index 4e25498bc..baeea059b 100755
--- a/classes/article.php
+++ b/classes/article.php
@@ -602,6 +602,7 @@ class Article extends Handler_Protected {
} else if ($e->nodeName == "video") {
$article_image = $e->getAttribute("poster");
+ /** @var DOMElement|false $src */
$src = $tmpxpath->query("//source[@src]", $e)->item(0);
if ($src) {
diff --git a/classes/feedparser.php b/classes/feedparser.php
index abf1545f8..dd58df941 100644
--- a/classes/feedparser.php
+++ b/classes/feedparser.php
@@ -65,10 +65,12 @@ class FeedParser {
$this->xpath = $xpath;
- $root = $xpath->query("(//atom03:feed|//atom:feed|//channel|//rdf:rdf|//rdf:RDF)");
+ $root_list = $xpath->query("(//atom03:feed|//atom:feed|//channel|//rdf:rdf|//rdf:RDF)");
- if (!empty($root) && $root->length > 0) {
- $root = $root->item(0);
+ if (!empty($root_list) && $root_list->length > 0) {
+
+ /** @var DOMElement|false $root */
+ $root = $root_list->item(0);
if ($root) {
switch (mb_strtolower($root->tagName)) {
diff --git a/plugins/af_comics/filters/af_comics_comicpress.php b/plugins/af_comics/filters/af_comics_comicpress.php
index 741d59672..93bfde7e7 100755
--- a/plugins/af_comics/filters/af_comics_comicpress.php
+++ b/plugins/af_comics/filters/af_comics_comicpress.php
@@ -32,7 +32,7 @@ class Af_Comics_ComicPress extends Af_ComicFilter {
return true;
}
- // buni-specific
+ /** @var DOMElement|false $webtoon_link (buni specific) */
$webtoon_link = $xpath->query("//a[contains(@href,'www.webtoons.com')]")->item(0);
if ($webtoon_link) {
diff --git a/plugins/af_comics/filters/af_comics_dilbert.php b/plugins/af_comics/filters/af_comics_dilbert.php
index 49fa54cfa..80a8a0221 100644
--- a/plugins/af_comics/filters/af_comics_dilbert.php
+++ b/plugins/af_comics/filters/af_comics_dilbert.php
@@ -22,7 +22,7 @@ class Af_Comics_Dilbert extends Af_ComicFilter {
if ($res && $doc->loadHTML($res)) {
$xpath = new DOMXPath($doc);
- // Get the image container
+ /** @var DOMElement|false $basenode (image container) */
$basenode = $xpath->query('(//div[@class="img-comic-container"]/a[@class="img-comic-link"])')->item(0);
// Get the comic title
diff --git a/plugins/af_comics/filters/af_comics_gocomics.php b/plugins/af_comics/filters/af_comics_gocomics.php
index 71d387918..f474312ae 100644
--- a/plugins/af_comics/filters/af_comics_gocomics.php
+++ b/plugins/af_comics/filters/af_comics_gocomics.php
@@ -50,6 +50,7 @@ class Af_Comics_Gocomics extends Af_ComicFilter {
if (@$doc->loadHTML($body)) {
$xpath = new DOMXPath($doc);
+ /** @var DOMElement|false $node */
$node = $xpath->query('//picture[contains(@class, "item-comic-image")]/img')->item(0);
if ($node) {