|
Posted by Evert | Rooftop Solutions on 03/29/05 08:41
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'));
?>
[Back to original message]
|