Edit report at https://bugs.php.net/bug.php?id=62639&edit=1

 ID:                 62639
 Comment by:         info at fuktommy dot com
 Reported by:        alexshock at yandex dot ru
 Summary:            XML structure broken
 Status:             Assigned
 Type:               Bug
 Package:            SimpleXML related
 Operating System:   debian 6.0.5
 PHP Version:        5.4.5
 Assigned To:        acurioso
 Block user comment: N
 Private report:     N

 New Comment:

It causes not only wrong var_dump and print_r, but also wrong boolean cast.

Test script:
------------
$xml = <<<XML
<?xml version="1.0"?>
<a>
    <b>Some String</b>
</a>
XML;

$b = simplexml_load_string($xml)->xpath('/a/b');
var_dump((string)$b[0]);
var_dump((bool)$b[0]);

Expected result:
----------------
string(11) "Some String"
bool(true)

Actual result:
--------------
string(11) "Some String"
bool(false)


Previous Comments:
------------------------------------------------------------------------
[2013-04-24 07:48:36] larue...@php.net

I think we should revert the previous fix at now, since this new bug is more 
critical than the previous one.

and I think the key problem there is that we can not tell iterating from 
convert_to_array in the sxe_get_prop_hash

without that, I don't think we can get a good fix for the 034.phpt

------------------------------------------------------------------------
[2013-02-18 21:21:48] sala...@php.net

Related To: Bug #62203

------------------------------------------------------------------------
[2012-07-30 01:57:05] willfi...@php.net

I think that would make more sense.  Thanks, Andrew.

------------------------------------------------------------------------
[2012-07-30 00:58:13] acuri...@php.net

I can confirm that reverting that patch does fix the bug; however, it causes 
the original test to fail again:

=====================================================================
FAILED TEST SUMMARY
---------------------------------------------------------------------
SimpleXML: cast to array [ext/simplexml/tests/034.phpt]
Bug #51615 (PHP crash with wrong HTML in SimpleXML) 
[ext/simplexml/tests/bug51615.phpt]
=====================================================================

See: ext/simplexml/tests/034.phpt for more information.

Ignore bug51615.phpt for now. That is just a side effect of test 34.

I would actually prefer if I could take the first stab at this bug myself since 
it was clearly introduced in my code. I'd be hesitate to just revert the 
changes since that would break test 34.

------------------------------------------------------------------------
[2012-07-29 23:44:17] acuri...@php.net

After reverting locally do all the unit test cases for SimpleXML still pass? 
This was not the case prior to the patch (one test was failing).

I'll work on reverting the change locally on my end tonight and see if I can 
reproduce the bug and fix.

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


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

    https://bugs.php.net/bug.php?id=62639


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

Reply via email to