aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuka Trovic <luka@nextcloud.com>2025-01-29 15:44:53 +0100
committerLuka Trovic <89908051+luka-nextcloud@users.noreply.github.com>2025-03-27 12:56:00 +0100
commit986a570dd701fe64395b2c84e74127adde6a4172 (patch)
tree1606b5e34c8f24a8ffd0bf4aa102a31a183e1e28
parente058f7fc55d3b95ba73f18fbceee9f61a727d106 (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>
-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;
}