summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVincent Petry <pvince81@owncloud.com>2015-04-13 12:36:47 +0200
committerVincent Petry <pvince81@owncloud.com>2015-04-13 12:36:47 +0200
commit2822d0579e170aa5f58d8726acb8c67e5633b523 (patch)
tree2baac013db05cefed3acaf312b7094278900a884
parentc3fbc2b6fd09bb5b94112da9248cae28d6ef85e3 (diff)
downloadnextcloud-server-2822d0579e170aa5f58d8726acb8c67e5633b523.tar.gz
nextcloud-server-2822d0579e170aa5f58d8726acb8c67e5633b523.zip
Properly add trailing slash to mount point
Fixes resolving mount points when shared mount point's target name has the same prefix as the source name
-rw-r--r--apps/files_sharing/tests/sharedmount.php12
-rw-r--r--lib/private/files/mount/mountpoint.php4
-rw-r--r--tests/lib/files/mount/mountpoint.php4
3 files changed, 16 insertions, 4 deletions
diff --git a/apps/files_sharing/tests/sharedmount.php b/apps/files_sharing/tests/sharedmount.php
index f64e1913905..ff4cb4c0e49 100644
--- a/apps/files_sharing/tests/sharedmount.php
+++ b/apps/files_sharing/tests/sharedmount.php
@@ -144,14 +144,20 @@ class Test_Files_Sharing_Mount extends OCA\Files_sharing\Tests\TestCase {
self::loginHelper(self::TEST_FILES_SHARING_API_USER2);
- \OC\Files\Filesystem::rename($this->filename, "newFileName");
+ \OC\Files\Filesystem::rename($this->filename, $this->filename . '_renamed');
- $this->assertTrue(\OC\Files\Filesystem::file_exists('newFileName'));
+ $this->assertTrue(\OC\Files\Filesystem::file_exists($this->filename . '_renamed'));
$this->assertFalse(\OC\Files\Filesystem::file_exists($this->filename));
self::loginHelper(self::TEST_FILES_SHARING_API_USER1);
$this->assertTrue(\OC\Files\Filesystem::file_exists($this->filename));
- $this->assertFalse(\OC\Files\Filesystem::file_exists("newFileName"));
+ $this->assertFalse(\OC\Files\Filesystem::file_exists($this->filename . '_renamed'));
+
+ // rename back to original name
+ self::loginHelper(self::TEST_FILES_SHARING_API_USER2);
+ \OC\Files\Filesystem::rename($this->filename . '_renamed', $this->filename);
+ $this->assertFalse(\OC\Files\Filesystem::file_exists($this->filename . '_renamed'));
+ $this->assertTrue(\OC\Files\Filesystem::file_exists($this->filename));
//cleanup
\OCP\Share::unshare('file', $fileinfo['fileid'], \OCP\Share::SHARE_TYPE_USER, self::TEST_FILES_SHARING_API_USER2);
diff --git a/lib/private/files/mount/mountpoint.php b/lib/private/files/mount/mountpoint.php
index 30c06790944..f1e492c8603 100644
--- a/lib/private/files/mount/mountpoint.php
+++ b/lib/private/files/mount/mountpoint.php
@@ -113,10 +113,12 @@ class MountPoint implements IMountPoint {
}
/**
+ * Sets the mount point path, relative to data/
+ *
* @param string $mountPoint new mount point
*/
public function setMountPoint($mountPoint) {
- $this->mountPoint = $mountPoint;
+ $this->mountPoint = $this->formatPath($mountPoint);
}
/**
diff --git a/tests/lib/files/mount/mountpoint.php b/tests/lib/files/mount/mountpoint.php
index 5a9c6de3e0a..29610e6058d 100644
--- a/tests/lib/files/mount/mountpoint.php
+++ b/tests/lib/files/mount/mountpoint.php
@@ -31,6 +31,10 @@ class MountPoint extends \Test\TestCase {
$this->assertEquals($storage, $mountPoint->getStorage());
$this->assertEquals(123, $mountPoint->getStorageId());
+ $this->assertEquals('/mountpoint/', $mountPoint->getMountPoint());
+
+ $mountPoint->setMountPoint('another');
+ $this->assertEquals('/another/', $mountPoint->getMountPoint());
}
public function testInvalidStorage() {