From ea3853ed5401ce7a06450a1f0d7f4a002f293461 Mon Sep 17 00:00:00 2001 From: Jonathan Weth <git@jonathanweth.de> Date: Mon, 17 May 2021 21:25:30 +0200 Subject: [PATCH] Do not trigger save on every favicon get process --- aleksis/core/util/core_helpers.py | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/aleksis/core/util/core_helpers.py b/aleksis/core/util/core_helpers.py index 89df8a8d6..a1423bd5b 100644 --- a/aleksis/core/util/core_helpers.py +++ b/aleksis/core/util/core_helpers.py @@ -130,12 +130,23 @@ def get_or_create_favicon(title: str, default: str, is_favicon: bool = False) -> """Ensure that there is always a favicon object.""" from favicon.models import Favicon # noqa - favicon, created = Favicon.on_site.update_or_create( + favicon, created = Favicon.on_site.get_or_create( title=title, defaults={"isFavicon": is_favicon} ) + + changed = False + + if favicon.isFavicon != is_favicon: + favicon.isFavicon = True + changed = True + if created: favicon.faviconImage.save(os.path.basename(default), File(open(default, "rb"))) + changed = True + + if changed: favicon.save() + return favicon -- GitLab