[prev in list] [next in list] [prev in thread] [next in thread]
List: kopete-devel
Subject: Re: [Kopete-devel] [Bug 72917] UTF8 and other cause XML parsing
From: Jason Keirstead <jason () keirstead ! org>
Date: 2004-01-23 20:13:31
Message-ID: 200401231613.31324.jason () keirstead ! org
[Download RAW message or body]
On January 23, 2004 2:48 pm, Thiago Macieira wrote:
> Hmm... I don't like this block of code. You're decoding character by
> character in UTF-8, which the decoder can't cope with, because you'd be
> passing each character in a multi-byte sequence separately. Actually, I
> can't find a toUnicode(QChar) function anywhere...
>
> KStringHandler::isUtf8 is preferrable, except it's marked @since 3.2.
> Maybe Kopete should copy that function into its own library then.
isUTF8() is fine for checking, but it's useless for taking a string and making
it displayable in unicode even if it isn't.
The point of this code block is not to determine if a string is UTF.. we
pretty much *know* it isn't. It's purpose is to take a non-UTF string for
which the codec is totally unknown and make it displayable as UTF,
by replacing undecodable characters with ?
I had assumed that QChar took care of the doubel byte stuff for me.
If it doesn't then I don't know how we can do this.
> - if it isn't given, try to the user's locale codec. If that fails, try
Why bother with the locale codec? What does my locale have to do with the
sender's?
> UTF-8
> - if any other fail, decode as Latin1
> - finally, clean up U+0000 to U+001F (excepting, maybe, newlines, etc.)
> (note: no locale nor UTF-8 if preferred is given)
UTF-8 should be last, because latin1 will indicate failure if it's not latin1.
UTF is the only codec in QT that *always* decodes. So we shoudl try that last,
then clean it up.
Also, hardly any messages are in UTF, so it''s more efficient to have this as
the last fallback.
--
There's no place like 127.0.0.1
http://www.keirstead.org
_______________________________________________
Kopete-devel mailing list
Kopete-devel@kde.org
https://mail.kde.org/mailman/listinfo/kopete-devel
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic