From bbe41a73dd0a77c572c78e9df8a77ff7b0cb7bf2 Mon Sep 17 00:00:00 2001 From: Daniel Kesselberg Date: Wed, 9 Oct 2019 17:43:54 +0200 Subject: [PATCH] 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 --- lib/private/Accounts/AccountManager.php | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/private/Accounts/AccountManager.php b/lib/private/Accounts/AccountManager.php index f1607b1a1e..01920d487b 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);