ID: 45546
User updated by: kaiser at macbureau dot de
Reported By: kaiser at macbureau dot de
-Status: Feedback
+Status: Open
Bug Type: PCRE related
Operating System: FreeBSD 7
PHP Version: 5.2.6
New Comment:
Sorry, c&p error, thanks, looking forward to hear from you.
./test.php
Segmentation fault (core dumped)
#!/usr/local/bin/php
<?php
function is_utf8($str) {
return (preg_match('/^([\x00-\x7f]|[\xc2-\xdf][\x80-
\xbf]|\xe0[\xa0-\xbf][\x80-\xbf]|[\xe1-\xec][\x80-\xbf]{2}|\xed[\x80-
\x9f][\x80-
\xbf]|[\xee-\xef][\x80-\xbf]{2}|f0[\x90-\xbf][\x80-\xbf]{2}|[\xf1-
\xf3][\x80-
\xbf]{3}|\xf4[\x80-\x8f][\x80-\xbf]{2})*$/', $str) === 1);
}
$i=0;
$str = '';
while ($i<5000) {
$str .= 'a';
$i++;
}
is_utf8($str);
?>
Previous Comments:
------------------------------------------------------------------------
[2008-07-17 17:53:51] [EMAIL PROTECTED]
the pasted code is incomplete (doesn't even run). Please provide a
complete, but short, reproducible script.
------------------------------------------------------------------------
[2008-07-17 16:31:50] kaiser at macbureau dot de
Description:
------------
PCRE with utf8 (Typo3 Mailform) kills apache childprocess. With the
following entry in apache errorlog on FreeBSD 7 with Apache 2.2.8:
[notice] child pid 6709 exit signal Illegal instruction (4)
Output of ulimit -a:
core file size (blocks, -c) unlimited
data seg size (kbytes, -d) 33554432
file size (blocks, -f) unlimited
max locked memory (kbytes, -l) unlimited
max memory size (kbytes, -m) unlimited
open files (-n) 11095
pipe size (512 bytes, -p) 1
stack size (kbytes, -s) 524288
cpu time (seconds, -t) unlimited
max user processes (-u) 5547
virtual memory (kbytes, -v) unlimite
Reproduce code:
---------------
#!/usr/local/bin/php
<?php
function is_utf8($str) {
return
(preg_match('/^([\x00-\x7f]|[\xc2-\xdf][\x80-\xbf]|\xe0[\
}
$i=0;
$str = '';
while ($i<5000) {
$str .= 'a';
$i++;
}
is_utf8($str);
?>
------------------------------------------------------------------------
--
Edit this bug report at http://bugs.php.net/?id=45546&edit=1