ID: 38017 Updated by: [EMAIL PROTECTED] Reported By: baco at infomaniak dot ch -Status: Open +Status: Feedback Bug Type: XML related Operating System: Linux Debian Sarge PHP Version: 5.1.4 New Comment:
Thank you for this bug report. To properly diagnose the problem, we need a short but complete example script to be able to reproduce this bug ourselves. A proper reproducing script starts with <?php and ends with ?>, is max. 10-20 lines long and does not require any external resources such as databases, etc. If possible, make the script source available online and provide an URL to it here. Try to avoid embedding huge scripts into the report. Previous Comments: ------------------------------------------------------------------------ [2006-07-05 17:32:55] baco at infomaniak dot ch Description: ------------ PHP5 Segmentation fault when a script call xml_parser_create() under Apache but not when called from the CLI ?!? $ wget -O- http://.../xml.php => Crash of Apache thread HTTP request sent, awaiting response... End of file while parsing headers. Retrying. child pid ... exit signal Segmentation fault (11) $ php xml.php => result OK Reproduce code: --------------- PHP Code to reproduce the segmentation fault inside Apache $file = "data.xml"; $data = ''; if (!($fp = fopen($file, "r"))) { die("could not open XML input"); } while (!feof($fp)) { $data .= fread($fp, 8192); } fclose($fp); $xml_parser = xml_parser_create("ISO-8859-1"); # crash at this point xml_parse_into_struct($xml_parser, $data, $vals, $index); xml_parser_free($xml_parser); print_r($vals); Expected result: ---------------- Expected to return on Apache but only output this when I call the script from PHP CLI. Array ( [0] => Array ( ... ) ... ) Actual result: -------------- N.B. php.ini and php-cli.ini are the same. ldd on php cli and on libphp5.so both use same libxml2 from Debian Sarge. Result (gdb) continue Program received signal SIGSEGV, Segmentation fault. [Switching to Thread -1210239712 (LWP 28800)] 0x0808b14c in XML_ParserFree () strace open("/home/www/29212ea8a58d20e52ba0886bd64685bb/web/test-xml/data.xml", O_RDONLY) = 7 fstat64(7, {st_mode=S_IFREG|0644, st_size=113, ...}) = 0 lseek(7, 0, SEEK_CUR) = 0 read(7, "<?xml version=\"1.0\" encoding=\"IS"..., 8192) = 113 read(7, "", 8192) = 0 close(7) = 0 --- SIGSEGV (Segmentation fault) @ 0 (0) --- chdir("/opt/apache") = 0 rt_sigaction(SIGSEGV, {SIG_DFL}, {SIG_DFL}, 8) = 0 getpid() = 28871 kill(28871, SIGSEGV) = 0 sigreturn() = ? (mask now []) --- SIGSEGV (Segmentation fault) @ 0 (0) --- PHP Compiled with './configure' '--prefix=/opt/php' '--mandir=/usr/share/man' '--with-apxs=/opt/apache/bin/apxs' '--disable-cgi' '--with-config-file-path=/opt/php/lib' '--disable-sigchild' '--disable-ipv6' '--disable-all' '--enable-libxml' '--with-libxml-dir' '--with-openssl' '--with-kerberos' '--with-pcre-regex' '--with-zlib' '--with-zlib-dir' '--enable-bcmath' '--enable-calendar' '--enable-ctype' '--with-curl' '--enable-dom' '--enable-exif' '--enable-ftp' '--with-openssl-dir' '--with-gd' '--with-jpeg-dir' '--with-png-dir' '--with-xpm-dir' '--with-ttf' '--with-freetype-dir' '--enable-gd-native-ttf' '--with-gettext' '--with-gmp' '--with-iconv' '--with-imap' '--with-imap-ssl' '--enable-mbstring' '--enable-mbregex' '--with-mcrypt' '--with-mhash' '--with-mysql=/opt/misc/mysql' '--with-mysqli=/opt/misc/mysql/bin/mysql_config' '--enable-pdo' '--with-pdo-mysql=/opt/misc/mysql' '--enable-posix' '--enable-session' '--enable-simplexml' '--enable-soap' '--enable-spl' '--with-tidy' '--enable-tokenizer' '--enable-wddx' '--enable-xml' '--with-libexpat-dir' '--with-xmlrpc' '--with-iconv-dir' '--with-xsl' '--with-pear' '--enable-memory-limit' '--enable-zend-multibyte' '--with-ming=/opt/misc/ming' '--enable-debug' ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=38017&edit=1