diff options
Diffstat (limited to 'apps/provisioning_api/lib')
-rw-r--r-- | apps/provisioning_api/lib/Controller/AppConfigController.php | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/apps/provisioning_api/lib/Controller/AppConfigController.php b/apps/provisioning_api/lib/Controller/AppConfigController.php index 2ea4602883c..2ff82213997 100644 --- a/apps/provisioning_api/lib/Controller/AppConfigController.php +++ b/apps/provisioning_api/lib/Controller/AppConfigController.php @@ -15,6 +15,7 @@ use OCP\AppFramework\Http\Attribute\NoAdminRequired; use OCP\AppFramework\Http\Attribute\PasswordConfirmationRequired; use OCP\AppFramework\Http\DataResponse; use OCP\AppFramework\OCSController; +use OCP\Exceptions\AppConfigUnknownKeyException; use OCP\IAppConfig; use OCP\IGroupManager; use OCP\IL10N; @@ -126,9 +127,15 @@ class AppConfigController extends OCSController { return new DataResponse(['data' => ['message' => $e->getMessage()]], Http::STATUS_FORBIDDEN); } - $configDetails = $this->appConfig->getDetails($app, $key); + $type = null; + try { + $configDetails = $this->appConfig->getDetails($app, $key); + $type = $configDetails['type']; + } catch (AppConfigUnknownKeyException) { + } + /** @psalm-suppress InternalMethod */ - match ($configDetails['type']) { + match ($type) { IAppConfig::VALUE_BOOL => $this->appConfig->setValueBool($app, $key, (bool)$value), IAppConfig::VALUE_FLOAT => $this->appConfig->setValueFloat($app, $key, (float)$value), IAppConfig::VALUE_INT => $this->appConfig->setValueInt($app, $key, (int)$value), |