summaryrefslogtreecommitdiffstats
path: root/apps/files_external/service
diff options
context:
space:
mode:
authorRobin McCorkell <rmccorkell@owncloud.com>2015-08-25 14:51:47 +0100
committerRobin McCorkell <rmccorkell@owncloud.com>2015-08-25 16:14:31 +0100
commit63218ec098655f9d7630b16394818746736d2f77 (patch)
treea8d30094e5fc26e5c23e3e48b811ad1266a0752b /apps/files_external/service
parent494c1d741798874c865b76fcf6918c978f944257 (diff)
downloadnextcloud-server-63218ec098655f9d7630b16394818746736d2f77.tar.gz
nextcloud-server-63218ec098655f9d7630b16394818746736d2f77.zip
Prevent objectstore being set from client side
Diffstat (limited to 'apps/files_external/service')
-rw-r--r--apps/files_external/service/storagesservice.php8
1 files changed, 6 insertions, 2 deletions
diff --git a/apps/files_external/service/storagesservice.php b/apps/files_external/service/storagesservice.php
index 3e2152741e5..947e544d88f 100644
--- a/apps/files_external/service/storagesservice.php
+++ b/apps/files_external/service/storagesservice.php
@@ -472,10 +472,14 @@ abstract class StoragesService {
if (!isset($allStorages[$id])) {
throw new NotFoundException('Storage with id "' . $id . '" not found');
}
-
$oldStorage = $allStorages[$id];
- $allStorages[$id] = $updatedStorage;
+ // ensure objectstore is persistent
+ if ($objectstore = $oldStorage->getBackendOption('objectstore')) {
+ $updatedStorage->setBackendOption('objectstore', $objectstore);
+ }
+
+ $allStorages[$id] = $updatedStorage;
$this->writeConfig($allStorages);
$this->triggerChangeHooks($oldStorage, $updatedStorage);