Edit report at http://bugs.php.net/bug.php?id=52608&edit=1
ID: 52608
Comment by: svimik at mail dot ru
Reported by: svimik at mail dot ru
Summary: child process exited with status 3221225477 (*or
128) -- Restarting.
Status: Bogus
Type: Bug
Package: Apache2 related
Operating System: Windows XP, Windows Server 2003
PHP Version: 5.2.14
Block user comment: N
New Comment:
I have found similar bugs, but can't find any acceptable solution.
In #47689 (did you mean this report?) I see tips to recompile php
(sorry, I use binaries only, don't have compilation skills), or patch
apache with VC Express (too large program. maybe there is some easier
way to patch it?)
Previous Comments:
------------------------------------------------------------------------
[2010-08-15 05:46:20] [email protected]
You have to increase the stack used by Apache (so PHP's pcre won'r crash
due to a too smal stack). There is another report about this issue, with
an explanation about how to increase the stack of an executable (sorry,
I don't have the # at hand).
------------------------------------------------------------------------
[2010-08-15 03:44:42] svimik at mail dot ru
Description:
------------
This script causes apache crash.
In CLI this script works well, so I put it as apache related bug.
Bug is reproducable with php versions:
5.2.14
5.2.13
Bug is NOT exists in php 5.2.6
Bug is reproducable with any php.ini config, including my own
configuration, "php.ini-dist" and "php.ini-recommended"
I'm using Apache/2.2.8 on Windows XP SP3
and Apache/2.2.11 on Windows Server 2003
Bug is reproducable on both.
PHP is configured as php5_module with php5apache2_2.dll (dll is from
original PHP zip package for win32).
Summary:
PHP 5.2.14 + Apache/2.2.8 + Windows XP = CRASH
PHP 5.2.14 + Apache/2.2.11 + Windows Server 2003 = CRASH
PHP 5.2.13 + Apache/2.2.8 + Windows XP = CRASH
PHP 5.2.6 + Apache/2.2.8 + Windows XP = OK
PHP 5.2.6 + Apache/2.2.11 + Windows Server 2003 = OK
Test script:
---------------
<?
$preg="\<td\>((?<!\<\/td\>).)*";
$str="<td>bug appears only with a long text here bug appears only with a
long text here bug appears only with a long text here bug appears only
with a long text here bug appearsbug appears only with a long text here
bug appears only with a long text here bug appears only with a long text
here bug appears only with a long... exactly this size.</td>";
//at least 343 bytes (334 bytes without tags)
preg_match_all("/$preg/", $str, $m);
?>
Actual result:
--------------
on Windows XP SP3:
[notice] Parent: child process exited with status 3221225477 --
Restarting.
[notice] Apache/2.2.8 (Win32) PHP/5.2.14 configured -- resuming normal
operations
on Windows Server 2003:
[notice] Parent: child process exited with status 128 -- Restarting.
[notice] Apache/2.2.11 (Win32) DAV/2 PHP/5.2.14 configured -- resuming
normal operations
----------
here is backtrace for Windows XP SP3:
Thread 64 - System ID 1284
Entry point msvcrt!_endthreadex+3a
Create time 2010/08/15 4:39:20
Time spent in user mode 0 Days 0:0:0.0
Time spent in kernel mode 0 Days 0:0:0.0
Function Arg 1 Arg 2 Arg 3 Source
php5ts!php_pcre_exec+d16 8e255000 00001902 00000100
0x00016100 00001902 00000100 00000600
0x80000000`00000000 00000100 00000600 00001900
PHP5TS!PHP_PCRE_EXEC+D16WARNING - DebugDiag was not able to locate debug
symbols for php5ts.dll, so the information below may be incomplete.
In
httpd__PID__2492__Date__08_15_2010__Time_04_40_10AM__584__Second_Chance_Exception_C00000FD.dmp
the assembly instruction at php5ts!php_pcre_exec+d16 in
C:\Apache\php\php5ts.dll from The PHP Group has caused a stack overflow
exception (0xC00000FD) when trying to write to memory location
0x02812f38 on thread 64
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/bug.php?id=52608&edit=1