Don't setup the filesystem to check for a favicon we don't use anyway

Signed-off-by: Joas Schilling <coding@schilljs.com>
This commit is contained in:
Joas Schilling 2021-10-13 15:45:42 +02:00
parent b585cf1ea1
commit da73990d1c
No known key found for this signature in database
GPG key ID: 7076EA9751AACDDA

View file

@ -43,6 +43,7 @@ namespace OCA\Theming;
use OCP\App\AppPathNotFoundException;
use OCP\App\IAppManager;
use OCP\Files\NotFoundException;
use OCP\Files\SimpleFS\ISimpleFile;
use OCP\ICacheFactory;
use OCP\IConfig;
use OCP\IL10N;
@ -363,17 +364,11 @@ class ThemingDefaults extends \OC_Defaults {
}
$cacheBusterValue = $this->config->getAppValue('theming', 'cachebuster', '0');
try {
$customFavicon = $this->imageManager->getImage('favicon');
} catch (NotFoundException $e) {
$customFavicon = null;
}
$route = false;
if ($image === 'favicon.ico' && ($customFavicon !== null || $this->imageManager->shouldReplaceIcons())) {
if ($image === 'favicon.ico' && ($this->imageManager->shouldReplaceIcons() || $this->getCustomFavicon() !== null)) {
$route = $this->urlGenerator->linkToRoute('theming.Icon.getFavicon', ['app' => $app]);
}
if (($image === 'favicon-touch.png' || $image === 'favicon-fb.png') && ($customFavicon !== null || $this->imageManager->shouldReplaceIcons())) {
if (($image === 'favicon-touch.png' || $image === 'favicon-fb.png') && ($this->imageManager->shouldReplaceIcons() || $this->getCustomFavicon() !== null)) {
$route = $this->urlGenerator->linkToRoute('theming.Icon.getTouchIcon', ['app' => $app]);
}
if ($image === 'manifest.json') {
@ -397,6 +392,14 @@ class ThemingDefaults extends \OC_Defaults {
return false;
}
protected function getCustomFavicon(): ?ISimpleFile {
try {
return $this->imageManager->getImage('favicon');
} catch (NotFoundException $e) {
return null;
}
}
/**
* Increases the cache buster key
*/