ID: 46340 Updated by: fel...@php.net Reported By: dl4gbe at gmail dot com -Status: No Feedback +Status: Feedback Bug Type: Scripting Engine problem Operating System: linux suse PHP Version: 5.2.6 New Comment:
Please try using this CVS snapshot: http://snaps.php.net/php5.2-latest.tar.gz For Windows: http://windows.php.net/snapshots/ Previous Comments: ------------------------------------------------------------------------ [2008-10-27 01:00:01] php-bugs at lists dot php dot net No feedback was provided for this bug for over a week, so it is being suspended automatically. If you are able to provide the information that was originally requested, please do so and change the status of the bug back to "Open". ------------------------------------------------------------------------ [2008-10-26 09:32:23] dl4gbe at gmail dot com I can't provide lines of script. The error seems not to occure in simple scripts. I guess it only happens in more complicated structures that an segmentation fault happens in case a method of a class does not exist. I will try to build a debug version on my system. But that needs time. Just now, I am not able to compile php on the affected system. I do not know if this helps: public static function getFormHtml($a_row,$a_form) { $l_return = ""; $l_return .= "<tr class='" . $a_form->getCssFormTr() . "'>" . utils::getLineEnd(); $l_return .= "<td class='" . $a_form->getCssFormTd() . "'>" . utils::getLineEnd(); $l_return .= "<table class='" . $a_form->getCssFormTable() . "' width='100%'"; $l_return .= " id='" . $a_form->getControlName() . "_table_form_main" . "'>" . utils::getLineEnd(); utils::addToDebugLog("getFormHtml (Start)"); if ($a_form->getTabCount() == 0) { utils::addToDebugLog("getFormHtml (1)"); $l_return .= "<tr class='" . $a_form->getCssTrForm() . "'>" . utils::getLineEnd(); $l_return .= "<td class='" . $a_form->getCssTdForm() . "'>" . utils::getLineEnd(); utils::getLineEnd(); // this line causes php to crash $l_return .= $a_form->getTabHtml(0,$a_row); // because I moved getTabHtml to htmlrender class as static // and there is no function with this name in $a_form anymore // This is the line which I planned to call but forgot to change :-( //$l_return .= htmlrender::getTabHtml(0,$a_row,$a_form); // what I know is, using this line instead of the line above // my program works and is not causing a segmentation error anymore. $l_return .= "</td>" . utils::getLineEnd(); $l_return .= "</tr>" . utils::getLineEnd(); } ------------------------------------------------------------------------ [2008-10-19 11:48:33] scott...@php.net Thank you for this bug report. To properly diagnose the problem, we need a backtrace to see what is happening behind the scenes. To find out how to generate a backtrace, please read http://bugs.php.net/bugs-generating-backtrace.php for *NIX and http://bugs.php.net/bugs-generating-backtrace-win32.php for Win32 Once you have generated a backtrace, please submit it to this bug report and change the status back to "Open". Thank you for helping us make PHP better. We would also need a short reproduce script about 10-20 lines that we can run. ------------------------------------------------------------------------ [2008-10-19 08:39:29] dl4gbe at gmail dot com Description: ------------ I used to have functions (methods) in a class named "form" (not static). Later, I changed the design and moved the methods into a static class. named "xmlparser". In one case I forgot to change my code and still called the old instance method. the old call was $a_form->createTable($l_formnode); it should have been: xmlparser::createTable($a_form,$l_formnode); Like said: I moved function createTable into the static class xmlparser. The function was called from another static function located in xmlparser which had a valid form object instanized and a valid xml node as a second parameter The result? I did not get a "function not found in class" or something like this error in the log file. No, I run into a crazy segmentation fault (11) error. I can't debug crazy segmentation fault errors(11) ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=46340&edit=1