From ed9049a90b9d1f9ff56d34a7e26bff00fade5d03 Mon Sep 17 00:00:00 2001 From: Robin Appelman Date: Thu, 16 Jul 2026 00:28:46 +0200 Subject: [PATCH] fix: don't die if we can't encode file metadata on upload Signed-off-by: Robin Appelman Signed-off-by: Carl Schwan --- lib/private/FilesMetadata/FilesMetadataManager.php | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/lib/private/FilesMetadata/FilesMetadataManager.php b/lib/private/FilesMetadata/FilesMetadataManager.php index b6077f1f27125..0ac6963ad1f1e 100644 --- a/lib/private/FilesMetadata/FilesMetadataManager.php +++ b/lib/private/FilesMetadata/FilesMetadataManager.php @@ -164,6 +164,10 @@ public function saveMetadata(IFilesMetadata $filesMetadata): void { } $json = json_encode($filesMetadata->jsonSerialize()); + if (!$json) { + $this->logger->error('Failed to json encode file metadata for ' . $filesMetadata->getFileId(), ['metadata' => $filesMetadata->jsonSerialize()]); + return; + } if (strlen($json) > self::JSON_MAXSIZE) { $this->logger->debug('huge metadata content detected: ' . $json); throw new FilesMetadataException('json cannot exceed ' . self::JSON_MAXSIZE . ' characters long; fileId: ' . $filesMetadata->getFileId() . '; size: ' . strlen($json));