diff options
Diffstat (limited to 'apps/files_external/lib')
-rw-r--r-- | apps/files_external/lib/Command/Config.php | 12 |
1 files changed, 6 insertions, 6 deletions
diff --git a/apps/files_external/lib/Command/Config.php b/apps/files_external/lib/Command/Config.php index 362f0a0f2b5..5df6f7ee650 100644 --- a/apps/files_external/lib/Command/Config.php +++ b/apps/files_external/lib/Command/Config.php @@ -91,9 +91,9 @@ class Config extends Base { } else { $value = $mount->getBackendOption($key); } - if (!is_string($value)) { // show bools and objects correctly - $value = json_encode($value); - } + if (!is_string($value) && json_decode(json_encode($value)) === $value) { // show bools and objects correctly + $value = json_encode($value); + } $output->writeln($value); } @@ -105,9 +105,9 @@ class Config extends Base { */ protected function setOption(StorageConfig $mount, $key, $value, OutputInterface $output) { $decoded = json_decode($value, true); - if (!is_null($decoded)) { - $value = $decoded; - } + if (!is_null($decoded) && json_encode($decoded) === $value) { + $value = $decoded; + } if ($key === 'mountpoint' || $key === 'mount_point') { $mount->setMountPoint($value); } else { |