#40752 [Opn->Csd]: parse_ini_file() segfaults when a scalar setting is redeclared as an array

From: Date: Thu, 08 Mar 2007 00:43:09 +0000
Subject: #40752 [Opn->Csd]: parse_ini_file() segfaults when a scalar setting is redeclared as an array
References: 1  Groups: php.bugs 
Request: Send a blank email to php-bugs+get-110078@lists.php.net to get a copy of this message
ID: 40752 Updated by: tony2001@php.net Reported By: hubert dot roksor at gmail dot com -Status: Open +Status: Closed Bug Type: Reproducible crash PHP Version: 5.2.1 New Comment: This bug has been fixed in CVS. Snapshots of the sources are packaged every three hours; this change will be in the next snapshot. You can grab the snapshot at http://snaps.php.net/. Thank you for the report, and for helping us make PHP better. Previous Comments: ------------------------------------------------------------------------ [2007-03-08 00:13:41] hubert dot roksor at gmail dot com Description: ------------ Using [] in a key name can result in a crash if the corresponding setting was previously set to a scalar value. Reproduce code: --------------- // Not relevant to the bug $file = tempnam('./', ''); file_put_contents($file, ' foo =1; foo[]=1; '); // Will make PHP crash parse_ini_file($file); Expected result: ---------------- In the attached reproduce code we create a ini file which has 2 keys, "foo" and "foo[]" then we execute parse_ini_file() on the newly-created file. Because "Characters {}|&~![()" must not be used anywhere in the key" (dixit the manual) I'd expect an error message, or at least a Strict notice. Actual result: -------------- PHP segfaults/crashes (tested on 5.2.1 on WinXP and 5.1.2 on Ubuntu 6.06) ------------------------------------------------------------------------ -- Edit this bug report at http://bugs.php.net/?id=40752&edit=1

« previous php.bugs (#110078) next »