ID: 14783 User updated by: [EMAIL PROTECTED] Reported By: [EMAIL PROTECTED] Old Status: Feedback Status: Open Bug Type: DOM XML related Operating System: RH6.2/Apache/libxml2.4.12 PHP Version: CVS Jan. 1 2002 New Comment:
My configuration notes: - PHP built as DSO, apache with disable-rule=EXPAT Here's my PHP build configuration: ./configure --with-pgsql --prefix=/usr/local/apache --with-apxs=/usr/local/apache/bin/apxs --with-pdflib=shared --with-dom=/usr/local/lib --enable-xslt --with-xslt-sablot=/usr/local --with-expat=/usr/local --with-zlib --with-gd=/usr/local --with-jpeg-dir=/usr --with-png-dir=/usr --with-t1lib=/usr/local Another note: I didn't find issues every time I unlinked a node, only when I unlinked (it seems) all the nodes selected--either from an XPath query or a children() call. And I noted that the did in fact occur during clean-up, not the unlink calls (no real debug, just through writing error_log messages at certain points in the PHP script). Previous Comments: ------------------------------------------------------------------------ [2002-01-01 12:45:41] [EMAIL PROTECTED] Did the same before I replied and it didn't crash, hm. What were your ./configure options? Do you have another small, self-contained sample? Feedback. ------------------------------------------------------------------------ [2002-01-01 11:15:45] [EMAIL PROTECTED] Just checked out and built from CVS this morning (2002/1/1). The test script still crashes. ------------------------------------------------------------------------ [2002-01-01 07:11:54] [EMAIL PROTECTED] This has been fixed in CVS. ------------------------------------------------------------------------ [2001-12-31 16:16:27] [EMAIL PROTECTED] Symptoms: - using unlink() causes segfault Script to reproduce: <?php $xml = <<<END_XML <?xml version="1.0"?> <test> <foo id="x">Hello</foo> <foo id="y">World</foo> </test> END_XML; $dom = xmldoc($xml); // this so I can see it. header('Content-type: text/plain'); $ctx = $dom->xpath_new_context(); $res = xpath_eval($ctx,"//foo"); foreach ($res->nodeset as $child) { $child->unlink(); } echo $dom->dumpmem(); ?> Other notes: - some cursory debugging I did suggested that it was the cleanup routines at the end of the script that were causing the crash. Looking at php_domxml.c, the recursive node memory cleanup appears to be choking on a pointer already freed during the unlink() call. ------------------------------------------------------------------------ Edit this bug report at http://bugs.php.net/?id=14783&edit=1 -- PHP Development Mailing List <http://www.php.net/> To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] To contact the list administrators, e-mail: [EMAIL PROTECTED]