]> code.citadel.org Git - citadel.git/blobdiff - webcit/gettext.c
* Fix "locale leak" on newer Linux systems where gettext() seems to cache
[citadel.git] / webcit / gettext.c
index 421e668d0b27467ba6d3ceba5cbc2d26db755b52..1f632ca9b701dbbd8f53a21712da9939afb07683 100644 (file)
@@ -180,11 +180,13 @@ void set_selected_language(char *lang) {
  * Activate and deactivate the selected language for this session.
  */
 void go_selected_language(void) {
-       uselocale(wc_locales[WC->selected_language]);
+       uselocale(wc_locales[WC->selected_language]);   /* switch locales */
+       textdomain(textdomain(NULL));                   /* clear the cache */
 }
 
 void stop_selected_language(void) {
-       uselocale(LC_GLOBAL_LOCALE);
+       uselocale(LC_GLOBAL_LOCALE);                    /* switch locales */
+       textdomain(textdomain(NULL));                   /* clear the cache */
 }