--- xtools.c.org	2003-11-06 11:19:10.000000000 +0100
+++ xtools.c	2003-11-06 11:27:59.000000000 +0100
@@ -3662,9 +3662,13 @@
 	if (c_locale_is_utf8)
 		return str;
 
-	/* should be logical to use g_filename_from_utf8() here, but
-	   somehow this works not correctly on my testsystem */
+#ifdef BROKEN_GTK2_LOCALE
+	/* on my redhat 7.3 system it does only work that way, but
+	   on other systems the correct way is in the #else branch */ 
 	locstr = g_locale_from_utf8(str, strlen(str), &in, &out, NULL);
+#else
+	locstr = g_filename_from_utf8(str, strlen(str), &in, &out, NULL);
+#endif
 	if (locstr) {
 		strncpy(str, locstr, MAXLINE);
 	}
