#40706 [Com]: preg_match crash

From: Date: Sun, 04 Mar 2007 13:47:52 +0000
Subject: #40706 [Com]: preg_match crash
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-109859@lists.php.net to get a copy of this message
ID: 40706 Comment by: bmihelac at mihelac dot org Reported By: askold2 at velo dot nsk dot ru Status: Open Bug Type: PCRE related Operating System: any PHP Version: 4.4.6 New Comment: I have similiar problem both on linux and windows. On windows it crashes PHP without any error notices. I am not sure if it crash PHP on linux/unix. Seems that regex with nested parenthesizes are especially vunerable, for example: $pattern = '/"([^"\\\\]*(?:(?:\\\\.)*[^"\\\\]*)*)"/'; Previous Comments: ------------------------------------------------------------------------ [2007-03-03 15:12:45] askold2 at velo dot nsk dot ru Description: ------------ the regular expression like ((any text)*(other text)*)* produce the hang or crash of PHP program. In the previous versions of php all worked properly. Reproduce code: --------------- $subj="sdfgsdg"; if(preg_match('/^((a)*(b)*)*$/',$subj)) echo "match"; else echo "not match"; Expected result: ---------------- "match" or "not match" printing Actual result: -------------- nothing. the hung of script on my unux hosting and breaking program in windows ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=40706&edit=1

« previous php.bugs (#109859) next »