Plug memory leak on Windows
authorTor Lillqvist <tml@iki.fi>
Thu, 10 Jun 2010 08:52:25 +0000 (11:52 +0300)
committerTor Lillqvist <tml@iki.fi>
Thu, 10 Jun 2010 08:54:35 +0000 (11:54 +0300)
Intern the string returned from g_win32_getlocale() and then free it.
Fixes bug #621168.

glib/gutils.c

index 4e7b000..406665e 100644 (file)
@@ -3111,9 +3111,12 @@ guess_category_value (const gchar *category_name)
    * by Windows and the Microsoft C runtime (in the "English_United
    * States" format) translated into the Unixish format.
    */
-  retval = g_win32_getlocale ();
-  if ((retval != NULL) && (retval[0] != '\0'))
+  {
+    char *locale = g_win32_getlocale ();
+    retval = g_intern_string (locale);
+    g_free (locale);
     return retval;
+  }
 #endif  
 
   return NULL;