#30257 [NEW]: Unexpected result of xml_get_current_byte_index and xml_get_current_column_numb
From: christoffer at natlikan dot se
Operating system: Windows XP
PHP version: 5CVS-2004-09-27 (dev)
PHP Bug Type: XML related
Bug description: Unexpected result of xml_get_current_byte_index and xml_get_current_column_numb
Description:
------------
xml_get_current_byte_index and xml_get_current_column_number returns
unexpected values when the XML contains a XML declaration. Using
php5.0-win32-200409270830 and Apache/1.3.31.
Reproduce code:
---------------
<?php
function elementOpen($parser, $elementName, $attributes) {
echo("ElementOpen - Row: " . xml_get_current_line_number($parser) .
" Col: " . xml_get_current_column_number($parser) .
" BIndex: " . xml_get_current_byte_index($parser) . "<br />");
}
function elementClose($parser, $elementName) {
echo("ElementClose - Row: " . xml_get_current_line_number($parser) .
" Col: " . xml_get_current_column_number($parser) .
" BIndex: " . xml_get_current_byte_index($parser) . "<br />");
}
$parser = xml_parser_create();
xml_parser_set_option($parser, XML_OPTION_CASE_FOLDING, false);
xml_set_element_handler($parser, "elementOpen", "elementClose");
$xml =
"<?xml version=\"1.0\" encoding=\"ISO-8859-1\"?>\n" .
"<a b=\"x\">\n" .
"\ttest\n" .
"\t<c>\n" .
"\t\t<d>foo</d>\n" .
"\t</c>\n" .
"</a>";
xml_parse($parser, $xml);
xml_parser_free($parser);
?>
Expected result:
----------------
ElementOpen - Row: 2 Col: 10 BIndex: 52
ElementOpen - Row: 4 Col: 8 BIndex: 63
ElementOpen - Row: 5 Col: 11 BIndex: 69
ElementClose - Row: 5 Col: 9 BIndex: 73
ElementClose - Row: 6 Col: 2 BIndex: 79
ElementClose - Row: 7 Col: 1 BIndex: 85
Actual result:
--------------
ElementOpen - Row: 2 Col: 5 BIndex: 11
ElementOpen - Row: 4 Col: 8 BIndex: 22
ElementOpen - Row: 5 Col: 11 BIndex: 28
ElementClose - Row: 5 Col: 15 BIndex: 36
ElementClose - Row: 6 Col: 18 BIndex: 42
ElementClose - Row: 7 Col: 21 BIndex: 47
--
Edit bug report at http://bugs.php.net/?id=30257&edit=1
--
Try a CVS snapshot (php4): http://bugs.php.net/fix.php?id=30257&r=trysnapshot4
Try a CVS snapshot (php5.0): http://bugs.php.net/fix.php?id=30257&r=trysnapshot50
Try a CVS snapshot (php5.1): http://bugs.php.net/fix.php?id=30257&r=trysnapshot51
Fixed in CVS: http://bugs.php.net/fix.php?id=30257&r=fixedcvs
Fixed in release: http://bugs.php.net/fix.php?id=30257&r=alreadyfixed
Need backtrace: http://bugs.php.net/fix.php?id=30257&r=needtrace
Need Reproduce Script: http://bugs.php.net/fix.php?id=30257&r=needscript
Try newer version: http://bugs.php.net/fix.php?id=30257&r=oldversion
Not developer issue: http://bugs.php.net/fix.php?id=30257&r=support
Expected behavior: http://bugs.php.net/fix.php?id=30257&r=notwrong
Not enough info: http://bugs.php.net/fix.php?id=30257&r=notenoughinfo
Submitted twice: http://bugs.php.net/fix.php?id=30257&r=submittedtwice
register_globals: http://bugs.php.net/fix.php?id=30257&r=globals
PHP 3 support discontinued: http://bugs.php.net/fix.php?id=30257&r=php3
Daylight Savings: http://bugs.php.net/fix.php?id=30257&r=dst
IIS Stability: http://bugs.php.net/fix.php?id=30257&r=isapi
Install GNU Sed: http://bugs.php.net/fix.php?id=30257&r=gnused
Floating point limitations: http://bugs.php.net/fix.php?id=30257&r=float
MySQL Configuration Error: http://bugs.php.net/fix.php?id=30257&r=mysqlcfg
Thread (6 messages)
- christoffer at natlikan dot se