From 846b814f9409ab7d4648dc774cf877294e945d14 Mon Sep 17 00:00:00 2001 From: Paul Holden Date: Mon, 15 Sep 2025 12:38:38 +0100 Subject: [PATCH] MDL-86069 blog: verify success state of RSS file before processing. Avoids subsequent errors in the SimplePie library when trying to process invalid feed content, triggering numerous PHP deprecation notices. See: https://github.com/simplepie/simplepie/issues/810 --- blog/external_blog_edit_form.php | 2 +- blog/lib.php | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/blog/external_blog_edit_form.php b/blog/external_blog_edit_form.php index 1cf979b3aa6..68ca8ed7c56 100644 --- a/blog/external_blog_edit_form.php +++ b/blog/external_blog_edit_form.php @@ -82,7 +82,7 @@ class blog_edit_external_form extends moodleform { $rssfile = $rss->registry->create('File', array($data['url'])); $filetest = $rss->registry->create('Locator', array($rssfile)); - if (!$filetest->is_feed($rssfile)) { + if (empty($rssfile->success) || !$filetest->is_feed($rssfile)) { $errors['url'] = get_string('feedisinvalid', 'blog'); } else { $rss->set_feed_url($data['url']); diff --git a/blog/lib.php b/blog/lib.php index 47566276e76..078c203811d 100644 --- a/blog/lib.php +++ b/blog/lib.php @@ -153,7 +153,7 @@ function blog_sync_external_entries($externalblog) { $rssfile = $rss->registry->create('File', array($externalblog->url)); $filetest = $rss->registry->create('Locator', array($rssfile)); - if (!$filetest->is_feed($rssfile)) { + if (empty($rssfile->success) || !$filetest->is_feed($rssfile)) { $externalblog->failedlastsync = 1; $DB->update_record('blog_external', $externalblog); return false;