Re: [Evolution] displaying mail source bug?
- From: guenther <guenther rudersport de>
- To: Dan Winship <danw ximian com>
- Cc: evolution ximian com
- Subject: Re: [Evolution] displaying mail source bug?
- Date: 07 Apr 2003 19:58:45 +0200
On Mon, 2003-04-07 at 18:28, Dan Winship wrote:
You say, when viewing a mail as source, the charset value will not be
evaluated. Which character set is used then?
It feels like 7 bit ANSII and every character not fitting into those 7
bit is replaced by a '?' char. Is that true?
Yes.
The reason why I come up with that: As you said just some minutes
before, the Euro symbol really is a 0xA4 byte. That byte and even the
German chars äöü are not only _displayed_ as '?', they are _replaced_. I
verified that by copying the same string to gedit.
As you explained it above, the reason for viewing as source is
displaying the headers, not the body. So there is nothing wrong with
that. Just wondering, why chars apparently get substituted in the body
string opposed to just let them untouched and as-is. Isn't that extra
work?
GtkHTML only displays UTF8. The input message is not UTF8, so it has to
be converted *somehow*. The conversion we make is to strip out non-ASCII
characters, since without looking at the charset, there's no way to know
what they mean.
Uh, thinking twice that even explains, why we can make no assumption
about the 8th bit and thus can't display 'ä'. (the *Most* Significant
Bit, speaking in terms of computer science ;-) Thanks, Dan...
...guenther
--
char *t="\10pse\0r\0dtu\0 ghno\x4e\xc8\x79\xf4\xab\x51\x8a\x10\xf4\xf4\xc4";
main(){ char h,m=h=*t++,*x=t+2*h,c,i,l=*x,s=0; for (i=0;i<l;i++){ i%8? c<<=1:
(c=*++x); c&128 && (s+=h); if (!(h>>=1)||!t[s+h]){ putchar(t[s]);h=m;s=0; }}}
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]