I've fixed this issue by adding 'use bytes' pragma into
DJabberd::Connection class.
This was not issue in SQLite, because in
DJabberd::Connection->write()
function was one data but right on enter into function
Danga::Socket->write() function data was different.
Brad Fitzpatrick wrote:
> You have a minimal test that shows corruption going
through Danga::Socket?
>
> I thought this was fixed awhile ago, and I thought the
issue was in
> SQLite.
>
> Do you know how Unicode works in Perl? (with the
SvUTF8 flag?)
>
>
> On Fri, Mar 14, 2008 at 4:31 AM, Aleksey Luzin
<subscr p34.net
> <mailto:subscr p34.net>> wrote:
>
> Hello,
>
> I have a problem with data in VCard which stored in
Russian,
> I see that data saved correctly in my db, but when
I retrive my vcard
> from server I see that everything was in russian is
broken.
> I've investigate this issue a little and found that
data changed
> on call
> function write of module Danga::Socket. Also I've
found in front
> of this
> module pragma use bytes;
> When I comment out this line, I've got correct
vcatds but start
> got the
> following error when sending messages in russian:
> 6354 ERROR DJabberd.Connection.ClientIn
1 disconnected
> DJabberd::Connection::ClientIn=ARRAY(0x8e6f9fc)
because: Wide
> character
> in syswrite at Danga/Socket.pm line 1034.
>
> How I can fix this issue?
>
>
>
> !DSPAM:47e31640160398165083049!
|