summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/language.cpp5
-rw-r--r--src/modules.cpp5
2 files changed, 8 insertions, 2 deletions
diff --git a/src/language.cpp b/src/language.cpp
index 885394b0c..ffaf3acb0 100644
--- a/src/language.cpp
+++ b/src/language.cpp
@@ -38,6 +38,10 @@ void InitLanguages()
#endif
}
+#if GETTEXT_FOUND
+/* Used by gettext to make it always dynamically load language strings (so we can drop them in while Anope is running) */
+extern "C" int _nl_msg_cat_cntr;
+#endif
const Anope::string GetString(Anope::string language, LanguageString string)
{
#if GETTEXT_FOUND
@@ -54,7 +58,6 @@ const Anope::string GetString(Anope::string language, LanguageString string)
return language_strings[string];
#if GETTEXT_FOUND
- extern int _nl_msg_cat_cntr;
++_nl_msg_cat_cntr;
setenv("LANGUAGE", language.c_str(), 1);
setlocale(LC_ALL, "en_US");
diff --git a/src/modules.cpp b/src/modules.cpp
index afcbb9ae6..eb7462d1a 100644
--- a/src/modules.cpp
+++ b/src/modules.cpp
@@ -286,6 +286,10 @@ Version Module::GetVersion() const
return Version(VERSION_MAJOR, VERSION_MINOR, VERSION_BUILD);
}
+#if GETTEXT_FOUND
+/* Used by gettext to make it always dynamically load language strings (so we can drop them in while Anope is running) */
+extern "C" int _nl_msg_cat_cntr;
+#endif
void Module::SendMessage(BotInfo *from, User *to, const char *fmt, ...)
{
Anope::string language = (to && to->Account() ? to->Account()->language : "");
@@ -299,7 +303,6 @@ void Module::SendMessage(BotInfo *from, User *to, const char *fmt, ...)
#if GETTEXT_FOUND
if (!language.empty())
{
- extern int _nl_msg_cat_cntr;
++_nl_msg_cat_cntr;
setenv("LANGUAGE", language.c_str(), 1);
setlocale(LC_ALL, "en_US");