From: [EMAIL PROTECTED]
Operating system: Win 2000
PHP version: 4.0.4
PHP Bug Type: Reproduceable crash
Bug description: Crash on comparing GLOBALS Variabel
I installed php 4.04 just as is. No settings are changed.
I fill the globals varibel with these functions:
-------------
function ReadSettingsFile($filename){
if (file_exists($filename)){
$FileContest = file ($filename);
while (list ($line_num, $line) = each ($FileContest)) {
$line = ereg_replace("[\n\r]", "", $line);
list ($name, $value) = split("=", $line);
if ($name != null && $value != null){
$GLOBALS[$name] = $value;
}
}
}
}
///////////////////////////////////////////////////////////////////////////////////////////////////
function ReadSetFile($filename){
if (file_exists($filename)){
$FileContest = split("\n", pack("H*", join("", file ('./'.
$filename))));
while (list ($line_num, $line) = each ($FileContest)) {
$line = ereg_replace("[\n\r]", "", $line);
list ($name, $value) = split("=", $line);
if ($name != null && $value != null){
$GLOBALS[$name] = $value;
}
}
}
}
-------------
When I run this peas of script later in the program the program terminates:
-------------
while(ereg ("%%([^%\/]*)%%", $workingtemplate, $name)){
if ($tempinput{$name[1]} != null){
$workingtemplate = ereg_replace("%%$name[1]%%",
$tempinput{$name[1]}, $workingtemplate);
}elseif($HTTP_ENV_VARS{$name[1]} != null){
$workingtemplate = ereg_replace("%%$name[1]%%",
$HTTP_ENV_VARS{$name[1]}, $workingtemplate);
}elseif($GLOBALS[$name[1]] != null){
$workingtemplate = ereg_replace("%%$name[1]%%",
$GLOBALS[$name[1]], $workingtemplate);
}else{
$workingtemplate = ereg_replace("%%$name[1]%%", "",
$workingtemplate);
}
}
-------------
When I comment these lines, the script won;t crash:
//}elseif($GLOBALS[$name[1]] != null){
//$workingtemplate = ereg_replace("%%$name[1]%%", $GLOBALS[$name[1]],
$workingtemplate);
-------------
It seams like the global variable is to big or something like that. But when I don't
fill the variables at the top the program still terminates. Then I get a DrWatson Like
error but then the win 2000 way. I also use MySQL. Closing MySQL didn't help eather. I
restart didn't bother eather.
If there are any questions please let me know.
thx,
Sebas
--
Edit Bug report at: http://bugs.php.net/?id=8746&edit=1
--
PHP Development Mailing List <http://www.php.net/>
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]