Skip to content

Commit

Permalink
Merge pull request #28377 from nextcloud/fix/shared-ext-storage-scan
Browse files Browse the repository at this point in the history
Scan the shared external storage source on access
  • Loading branch information
szaimen authored Sep 10, 2021
2 parents 90b47ab + 719480a commit 43fcd28
Showing 1 changed file with 16 additions and 1 deletion.
17 changes: 16 additions & 1 deletion apps/files_sharing/lib/SharedStorage.php
Original file line number Diff line number Diff line change
Expand Up @@ -34,10 +34,12 @@

use OC\Files\Cache\FailedCache;
use OC\Files\Cache\NullWatcher;
use OC\Files\Cache\Watcher;
use OC\Files\Filesystem;
use OC\Files\Storage\FailedStorage;
use OC\Files\Storage\Wrapper\PermissionsMask;
use OC\User\NoUserException;
use OCA\Files_External\Config\ExternalMountPoint;
use OCP\Constants;
use OCP\Files\Cache\ICacheEntry;
use OCP\Files\NotFoundException;
Expand Down Expand Up @@ -405,7 +407,20 @@ public function getOwner($path): string {
return $this->superShare->getShareOwner();
}

public function getWatcher($path = '', $storage = null): NullWatcher {
public function getWatcher($path = '', $storage = null): Watcher {
$mountManager = \OC::$server->getMountManager();

// Get node informations
$node = $this->getShare()->getNodeCacheEntry();
if ($node) {
$mount = $mountManager->findByNumericId($node->getStorageId());
// If the share is originating from an external storage
if (count($mount) > 0 && $mount[0] instanceof ExternalMountPoint) {
// Propagate original storage scan
return parent::getWatcher($path, $storage);
}
}

// cache updating is handled by the share source
return new NullWatcher();
}
Expand Down

0 comments on commit 43fcd28

Please sign in to comment.