mirror of
https://github.com/nextcloud/server.git
synced 2026-05-25 18:52:53 -04:00
Merge pull request #58127 from nextcloud/svg-handling-link-previews
[stable28] chore: Improve SVG handling in link previews
This commit is contained in:
commit
7d9c274dcb
1 changed files with 7 additions and 1 deletions
|
|
@ -170,8 +170,14 @@ class LinkReferenceProvider implements IReferenceProvider {
|
|||
if (in_array($contentType, self::ALLOWED_CONTENT_TYPES, true) && $contentLength < self::MAX_PREVIEW_SIZE) {
|
||||
$stream = Utils::streamFor($response->getBody());
|
||||
$bodyStream = new LimitStream($stream, self::MAX_PREVIEW_SIZE, 0);
|
||||
$content = $bodyStream->getContents();
|
||||
|
||||
if ($contentType === 'image/svg+xml' && stripos(html_entity_decode($content, ENT_XML1), 'XSL/Transform') !== false) {
|
||||
return;
|
||||
}
|
||||
|
||||
$reference->setImageContentType($contentType);
|
||||
$folder->newFile(md5($reference->getId()), $bodyStream->getContents());
|
||||
$folder->newFile(md5($reference->getId()), $content);
|
||||
$reference->setImageUrl($this->urlGenerator->linkToRouteAbsolute('core.Reference.preview', ['referenceId' => md5($reference->getId())]));
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue