From cb8978fb1d6576ec82526adcc8deea2b745c5dca Mon Sep 17 00:00:00 2001 From: est31 Date: Thu, 9 Jul 2015 08:23:08 +0200 Subject: [PATCH] Settings: pass name to callbacks by reference Spare some copies. --- src/clouds.cpp | 2 +- src/fontengine.cpp | 3 ++- src/game.cpp | 2 +- src/settings.h | 2 +- 4 files changed, 5 insertions(+), 4 deletions(-) diff --git a/src/clouds.cpp b/src/clouds.cpp index e213d118f..29210e2b4 100644 --- a/src/clouds.cpp +++ b/src/clouds.cpp @@ -30,7 +30,7 @@ class Clouds; Clouds *g_menuclouds = NULL; irr::scene::ISceneManager *g_menucloudsmgr = NULL; -static void cloud_3d_setting_changed(const std::string settingname, void *data) +static void cloud_3d_setting_changed(const std::string &settingname, void *data) { ((Clouds *)data)->readSettings(); } diff --git a/src/fontengine.cpp b/src/fontengine.cpp index 14b65f593..f881701e0 100644 --- a/src/fontengine.cpp +++ b/src/fontengine.cpp @@ -35,7 +35,8 @@ with this program; if not, write to the Free Software Foundation, Inc., FontEngine* g_fontengine = NULL; /** callback to be used on change of font size setting */ -static void font_setting_changed(const std::string, void *userdata) { +static void font_setting_changed(const std::string &name, void *userdata) +{ g_fontengine->readSettings(); } diff --git a/src/game.cpp b/src/game.cpp index ef3cb9044..41bfa5e60 100644 --- a/src/game.cpp +++ b/src/game.cpp @@ -806,7 +806,7 @@ public: m_fogEnabled = g_settings->getBool("enable_fog"); } - static void SettingsCallback(const std::string name, void *userdata) + static void SettingsCallback(const std::string &name, void *userdata) { reinterpret_cast(userdata)->onSettingsChange(name); } diff --git a/src/settings.h b/src/settings.h index d43ad6a20..d41f134cd 100644 --- a/src/settings.h +++ b/src/settings.h @@ -36,7 +36,7 @@ extern Settings *g_settings; extern std::string g_settings_path; /** function type to register a changed callback */ -typedef void (*setting_changed_callback)(const std::string, void*); +typedef void (*setting_changed_callback)(const std::string &name, void *data); enum ValueType { VALUETYPE_STRING,