Re: [Evolution-hackers] evolution 1.2 branch and UTF-8 strings - PATCH
- From: Jeffrey Stedfast <fejj ximian com>
- To: Frederic Crozat <fcrozat mandrakesoft com>
- Cc: evolution-hackers lists ximian com, evolution-patches ximian com
- Subject: Re: [Evolution-hackers] evolution 1.2 branch and UTF-8 strings - PATCH
- Date: 06 Mar 2003 11:36:10 -0500
Aha, found the problem... it seems that the gui code expected the prompt
in UTF-8 even though camel always sends the prompt in the locale
charset.
Simple fix attached.
Jeff
On Thu, 2003-03-06 at 11:12, Frederic Crozat wrote:
> Le jeu 06/03/2003 à 16:56, Jeffrey Stedfast a écrit :
> > On Thu, 2003-03-06 at 08:32, Frederic Crozat wrote:
> > > Hi all,
> > >
> > > while debugging the GPG signed message problem, I found another problem
> > > in camel : currently, it uses _() to translate its message and those
> > > strings are then used by mail-session.c to display modal dialog..
> > > Problem is _() will not always output an UTF-8 string, unless
> > > bind_textdomain_codeset is used (currently not the case in Evo 1.2.2)
> >
> > hmmm, Evolution 1.2.x doesn't use UTF-8 for dialog label display, it
> > just uses the user's locale charset so _() macro's should be fine.
> >
> > the only place evo uses UTF-8 is in the custom widgets (which the passwd
> > dialog doesn't use).
> >
> > basically, all messages from camel (errors/prompts) are supposed to be
> > in the locale charset.
>
> Ok.. I think it should be added in the camel documentation :))
>
> > >
> > > I'm seeing this problem in camel/camel-gpg-context.c:742 when it asks
> > > passphrase, which in French is translated using latin1 characters,
> > > causing the dialog to be "scrambled"..
> >
> > I think someone else reported something similar...(there's a bug in
> > bugzilla about it) perhaps it is only a problem when the locale is UTF-8
> > but the po files are in Latin1?
>
> Well, I don't think this is the problem here :
> french .po is latin1
> locale used (french) is latin1 too..
>
> But gal widgets are supposed to be using UTF-8 strings, IIRC, so a
> conversion is missing somewhere..
--
Jeffrey Stedfast
Evolution Hacker - Ximian, Inc.
fejj ximian com - www.ximian.com
Index: ChangeLog
===================================================================
RCS file: /cvs/gnome/evolution/mail/ChangeLog,v
retrieving revision 1.2444.2.17
diff -u -r1.2444.2.17 ChangeLog
--- ChangeLog 5 Mar 2003 18:50:39 -0000 1.2444.2.17
+++ ChangeLog 6 Mar 2003 16:33:56 -0000
@@ -1,3 +1,10 @@
+2003-03-06 Jeffrey Stedfast <fejj ximian com>
+
+ * mail-session.c (request_password): Don't use
+ e_utf8_to_gtk_string here, as the strings passed to us from camel
+ are already in the proper encoding (ie, the locale
+ encoding). Fixes bug #36453.
+
2003-03-04 Jeffrey Stedfast <fejj ximian com>
* mail-callbacks.c (composer_get_message): Revert my prior change
Index: mail-session.c
===================================================================
RCS file: /cvs/gnome/evolution/mail/mail-session.c,v
retrieving revision 1.40
diff -u -r1.40 mail-session.c
--- mail-session.c 16 Oct 2002 04:07:31 -0000 1.40
+++ mail-session.c 6 Mar 2003 16:33:56 -0000
@@ -248,7 +248,6 @@
GtkWidget *check, *check_label, *entry;
GList *children, *iter;
gboolean show;
- char *title;
unsigned int accel_key;
/* If we already have a password_dialogue up, save this request till later */
@@ -261,8 +260,7 @@
/* assume we can use any widget to translate string for display */
check_label = gtk_label_new ("");
- title = e_utf8_to_gtk_string (GTK_WIDGET (check_label), m->prompt);
- password_dialogue = (GnomeDialog *)dialogue = gnome_request_dialog (m->secret, title, NULL, 0, pass_got, m, NULL);
+ password_dialogue = (GnomeDialog *)dialogue = gnome_request_dialog (m->secret, m->title, NULL, 0, pass_got, m, NULL);
g_free(title);
password_destroy_id = gtk_signal_connect((GtkObject *)dialogue, "destroy", request_password_deleted, m);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]