ID:               36775
 User updated by:  ez at daoldskool dot org
 Reported By:      ez at daoldskool dot org
 Status:           Open
 Bug Type:         Feature/Change Request
 Operating System: OSX Tiger 10.4.5
 PHP Version:      5.1.2
 New Comment:

hey, don't be too fast dude !

here is the code, assuming my terminal is unicode compatible 
(OS X Tiger 10.4.5);

ezmac:/src/php-src/sapi/cli root# ./php -a
Interactive mode enabled

<?php
$wddx = file_get_contents('wddx_utf8.xml');
echo $wddx;
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<wddxPacket version='1.0'><header/><data><string>éèôoûî</
string></data></wddxPacket>
echo wddx_deserialize($wddx);
???o??
echo wddx_deserialize(utf8_encode($wddx));
éèôoûî

as you see when wddx_deserialize($wddx), i am expecting 
éèôoûî but i got ???o??

i have to rencode the document - i repeat myself, the 
docuement is already utf8 - a second time to get the 
expected result : wddx_deserialize(utf8_encode($wddx))


are you convinced now ?

this is NOT a feature request for a future release
this a BUG submission

because you should not force the encoding to iso-8859-1 with 
the parser


Previous Comments:
------------------------------------------------------------------------

[2006-03-18 22:19:07] [EMAIL PROTECTED]

Reclassified as feature request.

------------------------------------------------------------------------

[2006-03-18 22:17:27] [EMAIL PROTECTED]

I don't need a "proof", I need short and complete reproduce code with
expected and actual results.

>what php_wddx_deserialize_ex if not an instance of the EXPAT 
>parser : line 1140 parser = XML_ParserCreate("ISO-8859-1")
See ext/xml/compat.c, line 379.

------------------------------------------------------------------------

[2006-03-18 22:09:58] ez at daoldskool dot org

Ok tony, my mistake about EXPAT, i've been confused, please 
accept my apology

but the problem is till there : why instanciate the parser 
with forcing the document encoding to ISO-8859-1 ?

isn't the parser able to detect the document encoding ?

------------------------------------------------------------------------

[2006-03-18 22:00:54] ez at daoldskool dot org

once again the proof is live, here :

http://peoplemode.daoldskool.org:88/__dev/test/
test_NATIVE.php

and the source is here :

http://peoplemode.daoldskool.org:88/__dev/test/
test_NATIVE.php.s

PLUS you have it described here :

http://de2.php.net/manual/en/function.wddx-deserialize.php

and stop fooling me, i've been into the code : 
PHP_FUNCTION(wddx_deserialize) is a wrapper for int 
php_wddx_deserialize_ex(char *value, int vallen, zval 
*return_value)

what php_wddx_deserialize_ex if not an instance of the EXPAT 
parser : line 1140 parser = XML_ParserCreate("ISO-8859-1")

are you really the author of these lines ?

thanx

------------------------------------------------------------------------

[2006-03-18 21:31:16] [EMAIL PROTECTED]

>if you don't want the wddx_deserializer to mess with an 
>utf8 encoded docuemnt, you have to pass it utf8 encoded
Okay. Show me.

>the bug has been already reported several times and is still open 
No, it's not. It's closed as bogus.

>and YES wddx functions ARE using EXPAT :
>from the 5.1.2 release sources :
>ext/wddx.c, line 25 :
>#include "ext/xml/expat_compat.h"
Huh? Did you try to look into this file?
It's included *exactly* because libxml is used everywhere instead of
expat.

Please, give me short and complete reproduce code with expected and
actual results, and enough talking about what's crazy and what's not.
That's all I want to get from you.

------------------------------------------------------------------------

The remainder of the comments for this report are too long. To view
the rest of the comments, please view the bug report online at
    http://bugs.php.net/36775

-- 
Edit this bug report at http://bugs.php.net/?id=36775&edit=1

Reply via email to