Settings: Remove ConfigChangedCallback on shutdown

This commit is contained in:
Dentomologist 2025-04-25 11:43:41 -07:00
parent 9c40a7976b
commit 8724daf44e
2 changed files with 7 additions and 2 deletions

View file

@ -59,7 +59,7 @@ Settings::Settings()
});
});
Config::AddConfigChangedCallback([this] {
m_config_changed_callback_id = Config::AddConfigChangedCallback([this] {
static std::atomic<bool> do_once{true};
if (do_once.exchange(false))
{
@ -94,7 +94,10 @@ Settings::Settings()
});
}
Settings::~Settings() = default;
Settings::~Settings()
{
Config::RemoveConfigChangedCallback(m_config_changed_callback_id);
}
void Settings::UnregisterDevicesChangedCallback()
{

View file

@ -10,6 +10,7 @@
#include <QRadioButton>
#include <QSettings>
#include "Common/Config/Config.h"
#include "Core/Config/MainSettings.h"
#include "DiscIO/Enums.h"
#include "InputCommon/ControllerInterface/ControllerInterface.h"
@ -232,6 +233,7 @@ private:
std::shared_ptr<NetPlay::NetPlayClient> m_client;
std::shared_ptr<NetPlay::NetPlayServer> m_server;
ControllerInterface::HotplugCallbackHandle m_hotplug_callback_handle;
Config::ConfigChangedCallbackID m_config_changed_callback_id;
};
Q_DECLARE_METATYPE(Core::State);