aboutsummaryrefslogtreecommitdiff
path: root/app/Models/Feed.php
diff options
context:
space:
mode:
Diffstat (limited to 'app/Models/Feed.php')
-rw-r--r--app/Models/Feed.php18
1 files changed, 12 insertions, 6 deletions
diff --git a/app/Models/Feed.php b/app/Models/Feed.php
index 934036845..baaf448f8 100644
--- a/app/Models/Feed.php
+++ b/app/Models/Feed.php
@@ -395,9 +395,12 @@ class FreshRSS_Feed extends Minz_Model {
$guids = [];
$hasBadGuids = $this->attributes('hasBadGuids');
- // TODO: Replace very slow $simplePie->get_item($i) by getting all items at once
- for ($i = $simplePie->get_item_quantity() - 1; $i >= 0; $i--) {
- $item = $simplePie->get_item($i);
+ $items = $simplePie->get_items();
+ if (empty($items)) {
+ return $guids;
+ }
+ for ($i = count($items) - 1; $i >= 0; $i--) {
+ $item = $items[$i];
if ($item == null) {
continue;
}
@@ -423,10 +426,13 @@ class FreshRSS_Feed extends Minz_Model {
public function loadEntries(SimplePie $simplePie) {
$hasBadGuids = $this->attributes('hasBadGuids');
+ $items = $simplePie->get_items();
+ if (empty($items)) {
+ return;
+ }
// We want chronological order and SimplePie uses reverse order.
- // TODO: Replace very slow $simplePie->get_item($i) by getting all items at once
- for ($i = $simplePie->get_item_quantity() - 1; $i >= 0; $i--) {
- $item = $simplePie->get_item($i);
+ for ($i = count($items) - 1; $i >= 0; $i--) {
+ $item = $items[$i];
if ($item == null) {
continue;
}