From 93f49b1ca4526b7e5d8fc3ba647347b1e0b9ef40 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=A9o=20Lam?= Date: Fri, 4 Aug 2017 23:43:52 +0800 Subject: [PATCH] Config: Make Load() and Save() slightly faster Only invoke config changed callbacks from Config::Save, not Layer::Save. The latter results in callbacks being called once per layer, up to 7 times per save. --- Source/Core/Common/Config/Config.cpp | 2 ++ Source/Core/Common/Config/Layer.cpp | 2 -- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Source/Core/Common/Config/Config.cpp b/Source/Core/Common/Config/Config.cpp index 7e1fc904d9..30215aec06 100644 --- a/Source/Core/Common/Config/Config.cpp +++ b/Source/Core/Common/Config/Config.cpp @@ -62,12 +62,14 @@ void Load() { for (auto& layer : s_layers) layer.second->Load(); + InvokeConfigChangedCallbacks(); } void Save() { for (auto& layer : s_layers) layer.second->Save(); + InvokeConfigChangedCallbacks(); } void Init() diff --git a/Source/Core/Common/Config/Layer.cpp b/Source/Core/Common/Config/Layer.cpp index 5a5c4b5f59..6653dbfe65 100644 --- a/Source/Core/Common/Config/Layer.cpp +++ b/Source/Core/Common/Config/Layer.cpp @@ -115,7 +115,6 @@ void Layer::Load() if (m_loader) m_loader->Load(this); m_is_dirty = false; - InvokeConfigChangedCallbacks(); } void Layer::Save() @@ -125,7 +124,6 @@ void Layer::Save() m_loader->Save(this); m_is_dirty = false; - InvokeConfigChangedCallbacks(); } LayerType Layer::GetLayer() const