From 8d8b792007acd7c49e49ecc4e512ff594436656d Mon Sep 17 00:00:00 2001 From: Alexandre Alapetite Date: Tue, 18 May 2021 22:50:51 +0200 Subject: [PATCH] Fix array_chunk key index bug (#3631) * Fix array_chunk key index bug #fix https://github.com/FreshRSS/FreshRSS/issues/3630 We still want array entries indexed sequentially from zero https://php.net/function.array-chunk * One missing --- app/Models/EntryDAO.php | 10 +++++----- app/Models/TagDAO.php | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/app/Models/EntryDAO.php b/app/Models/EntryDAO.php index a95b9a422..046dc4afc 100644 --- a/app/Models/EntryDAO.php +++ b/app/Models/EntryDAO.php @@ -265,7 +265,7 @@ SQL; if (count($ids) > FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER) { // Split a query with too many variables parameters $affected = 0; - $idsChunks = array_chunk($ids, FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER, true); + $idsChunks = array_chunk($ids, FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER); foreach ($idsChunks as $idsChunk) { $affected += $this->markFavorite($idsChunk, $is_favorite); } @@ -356,7 +356,7 @@ SQL; } elseif (count($ids) > FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER) { // Split a query with too many variables parameters $affected = 0; - $idsChunks = array_chunk($ids, FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER, true); + $idsChunks = array_chunk($ids, FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER); foreach ($idsChunks as $idsChunk) { $affected += $this->markRead($idsChunk, $is_read); } @@ -981,7 +981,7 @@ SQL; yield false; } elseif (count($ids) > FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER) { // Split a query with too many variables parameters - $idsChunks = array_chunk($ids, FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER, true); + $idsChunks = array_chunk($ids, FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER); foreach ($idsChunks as $idsChunk) { foreach ($this->listByIds($idsChunk, $order) as $entry) { yield $entry; @@ -1020,7 +1020,7 @@ SQL; return $result; } elseif (count($guids) > FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER) { // Split a query with too many variables parameters - $guidsChunks = array_chunk($guids, FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER, true); + $guidsChunks = array_chunk($guids, FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER); foreach ($guidsChunks as $guidsChunk) { $result += $this->listHashForFeedGuids($id_feed, $guidsChunk); } @@ -1055,7 +1055,7 @@ SQL; } elseif (count($guids) > FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER) { // Split a query with too many variables parameters $affected = 0; - $guidsChunks = array_chunk($guids, FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER, true); + $guidsChunks = array_chunk($guids, FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER); foreach ($guidsChunks as $guidsChunk) { $affected += $this->updateLastSeen($id_feed, $guidsChunk, $mtime); } diff --git a/app/Models/TagDAO.php b/app/Models/TagDAO.php index 9d2f7d5a3..b5b59afd9 100644 --- a/app/Models/TagDAO.php +++ b/app/Models/TagDAO.php @@ -342,7 +342,7 @@ SQL; if (is_array($entries) && count($entries) > 0) { if (count($entries) > FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER) { // Split a query with too many variables parameters - $idsChunks = array_chunk($entries, FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER, true); + $idsChunks = array_chunk($entries, FreshRSS_DatabaseDAO::MAX_VARIABLE_NUMBER); foreach ($idsChunks as $idsChunk) { $values += $this->getTagsForEntries($idsChunk); }