summaryrefslogtreecommitdiffstats
path: root/apps/files_external
diff options
context:
space:
mode:
authorVincent Petry <pvince81@owncloud.com>2015-07-28 11:18:03 +0200
committerVincent Petry <pvince81@owncloud.com>2015-07-28 11:41:54 +0200
commit761ba344b786eb913ba41f4382315e8f75a51d2d (patch)
tree2bce95c07dbcbe902d576fe7b2d3e71aa8c235ba /apps/files_external
parent6ada1e327661b7ee2a4cf2d49aa6843352d1c31d (diff)
downloadnextcloud-server-761ba344b786eb913ba41f4382315e8f75a51d2d.tar.gz
nextcloud-server-761ba344b786eb913ba41f4382315e8f75a51d2d.zip
Double slash for SMB storage id for compatibility
Diffstat (limited to 'apps/files_external')
-rw-r--r--apps/files_external/lib/smb.php5
-rw-r--r--apps/files_external/tests/backends/smb.php12
2 files changed, 16 insertions, 1 deletions
diff --git a/apps/files_external/lib/smb.php b/apps/files_external/lib/smb.php
index 4a2eebf20b1..f58cd9849f2 100644
--- a/apps/files_external/lib/smb.php
+++ b/apps/files_external/lib/smb.php
@@ -78,7 +78,10 @@ class SMB extends Common {
* @return string
*/
public function getId() {
- return 'smb::' . $this->server->getUser() . '@' . $this->server->getHost() . '/' . $this->share->getName() . '/' . $this->root;
+ // FIXME: double slash to keep compatible with the old storage ids,
+ // failure to do so will lead to creation of a new storage id and
+ // loss of shares from the storage
+ return 'smb::' . $this->server->getUser() . '@' . $this->server->getHost() . '//' . $this->share->getName() . '/' . $this->root;
}
/**
diff --git a/apps/files_external/tests/backends/smb.php b/apps/files_external/tests/backends/smb.php
index 9e60a9e06e0..0da86cb824f 100644
--- a/apps/files_external/tests/backends/smb.php
+++ b/apps/files_external/tests/backends/smb.php
@@ -61,4 +61,16 @@ class SMB extends Storage {
$this->assertTrue($result);
$this->assertTrue($this->instance->is_dir('foo bar'));
}
+
+ public function testStorageId() {
+ $this->instance = new \OC\Files\Storage\SMB([
+ 'host' => 'testhost',
+ 'user' => 'testuser',
+ 'password' => 'somepass',
+ 'share' => 'someshare',
+ 'root' => 'someroot',
+ ]);
+ $this->assertEquals('smb::testuser@testhost//someshare//someroot/', $this->instance->getId());
+ $this->instance = null;
+ }
}