From e743386acffe6cb7de4b8d2dac5aeac70f1a74e0 Mon Sep 17 00:00:00 2001 From: Michael Gapczynski Date: Fri, 8 Mar 2013 14:27:30 -0500 Subject: [PATCH] Fix correctFolders and retrieve the correct storage cache --- apps/files_sharing/lib/cache.php | 23 +++++++++++++---------- apps/files_sharing/lib/updater.php | 11 ++++------- 2 files changed, 17 insertions(+), 17 deletions(-) diff --git a/apps/files_sharing/lib/cache.php b/apps/files_sharing/lib/cache.php index 6f834e08999..9fccd0b46f3 100644 --- a/apps/files_sharing/lib/cache.php +++ b/apps/files_sharing/lib/cache.php @@ -42,16 +42,19 @@ class Shared_Cache extends Cache { */ private function getSourceCache($target) { $source = \OC_Share_Backend_File::getSource($target); - if (isset($source['path'])) { - $source['path'] = '/' . $source['uid_owner'] . '/' . $source['path']; - \OC\Files\Filesystem::initMountPoints($source['uid_owner']); - list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($source['path']); - if ($storage) { - $this->files[$target] = $internalPath; - $cache = $storage->getCache(); - $this->storageId = $storage->getId(); - $this->numericId = $cache->getNumericStorageId(); - return $cache; + if (isset($source['path']) && isset($source['fileOwner'])) { + \OC\Files\Filesystem::initMountPoints($source['fileOwner']); + $mount = \OC\Files\Mount::findByNumericId($source['storage']); + if ($mount) { + $fullPath = $mount->getMountPoint().$source['path']; + list($storage, $internalPath) = \OC\Files\Filesystem::resolvePath($fullPath); + if ($storage) { + $this->files[$target] = $internalPath; + $cache = $storage->getCache(); + $this->storageId = $storage->getId(); + $this->numericId = $cache->getNumericStorageId(); + return $cache; + } } } return false; diff --git a/apps/files_sharing/lib/updater.php b/apps/files_sharing/lib/updater.php index 861025c5933..73e7808f24a 100644 --- a/apps/files_sharing/lib/updater.php +++ b/apps/files_sharing/lib/updater.php @@ -38,13 +38,10 @@ class Shared_Updater { while (!empty($users)) { $reshareUsers = array(); foreach ($users as $user) { - // The ETag of the logged in user should already be updated - if ($user !== $uid) { - $etag = \OC\Files\Filesystem::getETag(''); - \OCP\Config::setUserValue($user, 'files_sharing', 'etag', $etag); - // Look for reshares - $reshareUsers = array_merge($reshareUsers, \OCP\Share::getUsersItemShared('file', $info['fileid'], $user, true)); - } + $etag = \OC\Files\Filesystem::getETag(''); + \OCP\Config::setUserValue($user, 'files_sharing', 'etag', $etag); + // Look for reshares + $reshareUsers = array_merge($reshareUsers, \OCP\Share::getUsersItemShared('file', $info['fileid'], $user, true)); } $users = $reshareUsers; } -- 2.39.5