diff options
author | Côme Chilliet <come.chilliet@nextcloud.com> | 2022-12-13 09:29:07 +0100 |
---|---|---|
committer | Côme Chilliet <come.chilliet@nextcloud.com> | 2023-01-20 11:22:09 +0100 |
commit | f2cdc4f47d9136b54159557136dad892dcd31ec2 (patch) | |
tree | e54eee4d6522f6dc60ed74d14f0a18cab3135c7e /lib/private/AppFramework/OCS | |
parent | 0c466b7ff59c08e796437fc666a5307cb1dc969f (diff) | |
download | nextcloud-server-f2cdc4f47d9136b54159557136dad892dcd31ec2.tar.gz nextcloud-server-f2cdc4f47d9136b54159557136dad892dcd31ec2.zip |
Fix crash in OCS when getting info about an application
Signed-off-by: Côme Chilliet <come.chilliet@nextcloud.com>
Diffstat (limited to 'lib/private/AppFramework/OCS')
-rw-r--r-- | lib/private/AppFramework/OCS/BaseResponse.php | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/lib/private/AppFramework/OCS/BaseResponse.php b/lib/private/AppFramework/OCS/BaseResponse.php index dbff1b846c1..f9577a7a5f2 100644 --- a/lib/private/AppFramework/OCS/BaseResponse.php +++ b/lib/private/AppFramework/OCS/BaseResponse.php @@ -37,13 +37,13 @@ abstract class BaseResponse extends Response { /** @var string */ protected $format; - /** @var string */ + /** @var ?string */ protected $statusMessage; - /** @var int */ + /** @var ?int */ protected $itemsCount; - /** @var int */ + /** @var ?int */ protected $itemsPerPage; /** @@ -125,12 +125,15 @@ abstract class BaseResponse extends Response { return $writer->outputMemory(true); } - /** - * @param array $array - * @param \XMLWriter $writer - */ - protected function toXML(array $array, \XMLWriter $writer) { + protected function toXML(array $array, \XMLWriter $writer): void { foreach ($array as $k => $v) { + if ($k === '@attributes' && is_array($v)) { + foreach ($v as $k2 => $v2) { + $writer->writeAttribute($k2, $v2); + } + continue; + } + if (\is_string($k) && strpos($k, '@') === 0) { $writer->writeAttribute(substr($k, 1), $v); continue; |