Skip to content

Commit 269f38e

Browse files
authored
Merge pull request #2307 from nextcloud/fix/bookmark-previewer-cache-only
fix BookmarkPreviewer to not store null values in cache overzealously
2 parents cdb07f2 + f5a70fc commit 269f38e

2 files changed

Lines changed: 5 additions & 3 deletions

File tree

lib/Controller/AdminController.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -78,9 +78,9 @@ public function checkPreviewer(string $previewer): Http\Response {
7878
if (!isset($this->previewers[$previewer])) {
7979
return new JSONResponse([], Http::STATUS_BAD_REQUEST);
8080
}
81-
$previewer = $this->previewers[$previewer];
81+
$previewerImp = $this->previewers[$previewer];
8282
$test = new Bookmark();
8383
$test->setUrl('https://nextcloud.com/');
84-
return new Http\DataDisplayResponse($previewer->getImage($test)?->getData() ?? '');
84+
return new Http\DataDisplayResponse($previewerImp->getImage($test)?->getData() ?? '');
8585
}
8686
}

lib/Service/BookmarkPreviewer.php

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -88,12 +88,14 @@ public function getImage($bookmark, $cacheOnly = false): ?IImage {
8888
} catch (NotFoundException $e) {
8989
} catch (NotPermittedException $e) {
9090
}
91+
if ($cacheOnly) {
92+
continue;
93+
}
9194
$image = $previewer->getImage($bookmark, $cacheOnly);
9295
if (isset($image)) {
9396
$this->cache->set($key, $image->serialize(), self::CACHE_TTL);
9497
return $image;
9598
}
96-
9799
$this->cache->set($key, 'null', self::CACHE_TTL);
98100
}
99101

0 commit comments

Comments
 (0)