Skip to content

Commit 2058212

Browse files
authored
Merge pull request #62208 from nextcloud/filemetadata-serialize-fail
fix: don't die if we can't encode file metadata on upload
2 parents f3f4308 + 0d74414 commit 2058212

1 file changed

Lines changed: 4 additions & 0 deletions

File tree

lib/private/FilesMetadata/FilesMetadataManager.php

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,10 @@ public function saveMetadata(IFilesMetadata $filesMetadata): void {
164164
}
165165

166166
$json = json_encode($filesMetadata->jsonSerialize());
167+
if (!$json) {
168+
$this->logger->error('Failed to json encode file metadata for ' . $filesMetadata->getFileId(), ['metadata' => $filesMetadata->jsonSerialize()]);
169+
return;
170+
}
167171
if (strlen($json) > self::JSON_MAXSIZE) {
168172
$this->logger->debug('huge metadata content detected: ' . $json);
169173
throw new FilesMetadataException('json cannot exceed ' . self::JSON_MAXSIZE . ' characters long; fileId: ' . $filesMetadata->getFileId() . '; size: ' . strlen($json));

0 commit comments

Comments
 (0)