Re: [gnome-cyr] GNOME2



В Птн, 25.01.2002, в 13:32, Timur I. Bakeyev написал:
> On Fri, Jan 25, 2002 at 01:39:14PM +0300, Valek Filippov wrote:
> 
> > > IMHO, это они ламернулись :) По-идее, LC_ALL "нэ нада" :)
> > Может пнёшь багрепортом?
> 
> Ну, проявляется не у меня - трудно описать проблему, которую не видел... Дима, может
> ты пнешь :)?
> 
Вот чего я обнаружил. В libgnomeui в файле libgnomeui/gnome-ui-init.c в
функции libgnomeui_pre_args_parse есть такой кусок

--- код

        /* Begin hack to propogate an en_US locale into Gtk+ if
LC_CTYPE=C, so that non-ASCII
           characters will display for as many people as possible.
Related to bug #1979 */
        ctype = setlocale (LC_CTYPE, NULL);

        if (strcmp (ctype, "C") == 0) {
                old_ctype = g_strdup (g_getenv ("LC_CTYPE"));
                gnome_setenv ("LC_CTYPE", "en_US", TRUE);
                ctype_set = TRUE;
        } else {
                ctype_set = FALSE;
	}

        gsl=gtk_set_locale ();
	g_print("Set locale: %s\n", gsl);

        if (ctype_set) {
                if (old_ctype) {
			gnome_setenv ("LC_CTYPE", old_ctype, TRUE);
                        g_free (old_ctype);
                } else {
			gnome_unsetenv ("LC_CTYPE");
		}
        }
        /* End hack */

--- код

Здесь все прибамбасы, связанные с переменной gsl - мои, я хотел
проверить, что получается при вызове gtk_set_locale(). Оказалось, локаль
устанавливается в C. Других вызовов gtk_set_locale() в libgnomeui нет.
Чего-то тут не всё гладко. Хак он всегда хак.
Хорошо бы это дело Влад посмотрел.

Дмитрий



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]