Hi I have a problem converting german ess-zet ("ß") from lower to uppercase when using g_unichar_toupper, but it works fine using g_utf8_strup. Using g_unichar_toupper I get a 0 as result. Here it is a sample. The output is:
g_unichar_toupper. Lower:'ß', Upper:'' g_utf8_strup. Lower:'ß', Upper:'SS' int main() { gchar *strLower = "ß"; // Bad conversion with g_unichar_toupper gunichar uniLower = g_utf8_get_char(strLower); gunichar uniUpper = g_unichar_toupper(uniLower); gchar strUpper[6]; gint len = g_unichar_to_utf8(uniUpper, strUpper); strUpper[len] = '\0'; printf("\ng_unichar_toupper. Lower:'%s', Upper:'%s'", strLower, strUpper); // Result: g_unichar_toupper. Lower:'ß', Upper:'' //Good conversion with g_utf8_strup gchar *goodUpper = g_utf8_strup (strLower, -1); printf("\nGood. Lower:'%s', Upper:'%s'", strLower, goodUpper); g_free(goodUpper); // Result: g_utf8_strup. Lower:'ß', Upper:'SS' } Regards _______________________________________________ gtk-app-devel-list mailing list gtk-app-devel-list@gnome.org http://mail.gnome.org/mailman/listinfo/gtk-app-devel-list