Hi People,

I'm working on some complex PHP4 OOP Scripts and at a really unusual point I'm getting the following error in my apache errorlog:

*** glibc detected *** double free or corruption (!prev): 0x0828c510 ***
[Tue Mar 29 07:09:27 2005] [notice] child pid 9110 exit signal Aborted (6)

This doesn't seem as a error I should be able to cause.

I'm using:

PHP 4.3.10
Apache 1.3.33
Slackware 10 packages
The latest Zend Optimizer

This has only happened so far after an EXPAT xml parse. The reproduce code is below.

If someone can confirm this error I can report it as a bug.. I just wanted to make sure it is one :)

regards,
Evert

<?

 class sParser {


function onStartElement($parser,$name,$attribs) {

               return false;

       }

       function onEndElement($parser,$name) {

               return false;

       }

       function onCDATA($parser,$data) {

               return false;

       }

       function onProcessInstruction($parser,$target,$data) {

               return false;

       }


function onXMLError($line,$errorcode,$errorstring) {

               return false;

       }


function xmlparse($data) {

$this->parser = xml_parser_create('UTF-8');
xml_parser_set_option($this->parser,XML_OPTION_CASE_FOLDING,false);
xml_set_element_handler($this->parser,array($this, 'onStartElement'),array($this,'onEndElement'));
xml_set_character_data_handler($this->parser,array($this,'onCDATA'));
xml_set_processing_instruction_handler($this->parser,array($this,'onProcessInstruction'));
if (!xml_parse($this->parser,$data)) {
$this->onXMLError(xml_get_current_line_number($this->parser), xml_get_error_code($this->parser), xml_error_string(xml_get_error_code($
this->parser)));
return false;
} else return $this->parsedData;


       }

       function execute($data) {

               return $this->xmlparse($data);

       }

 }

 $disp = new sParser();

 $disp->execute(file_get_contents('test'));


?>

--
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php



Reply via email to