aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuka Trovic <luka@nextcloud.com>2025-01-29 15:44:53 +0100
committerAndy Scherzinger <info@andy-scherzinger.de>2025-03-22 17:12:41 +0100
commitd5c53a07f14a5e5cfcbd41ad6e823c5564970a00 (patch)
tree6be4e2b3d2bfe6b55306b2c630848a2dea47a13d
parente5ee50e7f4f6668977aae698413081bc4397bf7e (diff)
downloadnextcloud-server-backport/50542/stable30.tar.gz
nextcloud-server-backport/50542/stable30.zip
fix(files_sharing): skip expiration notify for invalid share recordbackport/50542/stable30
Signed-off-by: Luka Trovic <luka@nextcloud.com> [skip ci]
-rw-r--r--apps/files_sharing/lib/Command/ExiprationNotification.php8
1 files changed, 6 insertions, 2 deletions
diff --git a/apps/files_sharing/lib/Command/ExiprationNotification.php b/apps/files_sharing/lib/Command/ExiprationNotification.php
index f4f41dc7011..dcff1d1ce2e 100644
--- a/apps/files_sharing/lib/Command/ExiprationNotification.php
+++ b/apps/files_sharing/lib/Command/ExiprationNotification.php
@@ -8,6 +8,7 @@ declare(strict_types=1);
*/
namespace OCA\Files_Sharing\Command;
+use OCA\Files_Sharing\OrphanHelper;
use OCP\AppFramework\Utility\ITimeFactory;
use OCP\IDBConnection;
use OCP\Notification\IManager as NotificationManager;
@@ -30,7 +31,9 @@ class ExiprationNotification extends Command {
public function __construct(ITimeFactory $time,
NotificationManager $notificationManager,
IDBConnection $connection,
- ShareManager $shareManager) {
+ ShareManager $shareManager,
+ private OrphanHelper $orphanHelper,
+ ) {
parent::__construct();
$this->notificationManager = $notificationManager;
@@ -62,7 +65,8 @@ class ExiprationNotification extends Command {
foreach ($shares as $share) {
if ($share->getExpirationDate() === null
|| $share->getExpirationDate()->getTimestamp() < $minTime->getTimestamp()
- || $share->getExpirationDate()->getTimestamp() > $maxTime->getTimestamp()) {
+ || $share->getExpirationDate()->getTimestamp() > $maxTime->getTimestamp()
+ || !$this->orphanHelper->isShareValid($share->getSharedBy(), $share->getNodeId())) {
continue;
}