summaryrefslogtreecommitdiffstats
path: root/lib
diff options
context:
space:
mode:
authorDaniel Kesselberg <mail@danielkesselberg.de>2019-10-09 17:43:54 +0200
committerChristoph Wurst <christoph@winzerhof-wurst.at>2019-12-13 12:31:45 +0100
commitbbe41a73dd0a77c572c78e9df8a77ff7b0cb7bf2 (patch)
tree954e5fea36494ed47200ab6f8a42b66e9eaeb4de /lib
parent642606754b133a36d7715b45b243155cbb006f95 (diff)
downloadnextcloud-server-bbe41a73dd0a77c572c78e9df8a77ff7b0cb7bf2.tar.gz
nextcloud-server-bbe41a73dd0a77c572c78e9df8a77ff7b0cb7bf2.zip
Return a default user record if json is broken
It's possible that json_decode returns null. Mostly the json is broken. AddMissingDefaultValues expects an array. Pass null will fail. Signed-off-by: Daniel Kesselberg <mail@danielkesselberg.de>
Diffstat (limited to 'lib')
-rw-r--r--lib/private/Accounts/AccountManager.php3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/private/Accounts/AccountManager.php b/lib/private/Accounts/AccountManager.php
index f1607b1a1ef..01920d487b5 100644
--- a/lib/private/Accounts/AccountManager.php
+++ b/lib/private/Accounts/AccountManager.php
@@ -137,6 +137,9 @@ class AccountManager implements IAccountManager {
}
$userDataArray = json_decode($result[0]['data'], true);
+ if ($userDataArray === null || json_last_error() !== JSON_ERROR_NONE) {
+ return $this->buildDefaultUserRecord($user);
+ }
$userDataArray = $this->addMissingDefaultValues($userDataArray);