From: Dmitry Stogov Date: Thu, 3 Aug 2006 11:05:09 +0000 (+0000) Subject: In addtion to path to php.ini, PHPRC now may specify full file name X-Git-Tag: RELEASE_1_0_0RC1~2115 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=a0f7f6680a6bcf8d7826ba339f8e836c46e835c4;p=php In addtion to path to php.ini, PHPRC now may specify full file name --- diff --git a/main/php_ini.c b/main/php_ini.c index f547136a3c..da8ba16644 100644 --- a/main/php_ini.c +++ b/main/php_ini.c @@ -258,6 +258,7 @@ static void pvalue_config_destructor(zval *pvalue) */ int php_init_config(TSRMLS_D) { + char *php_ini_file_name = NULL; char *php_ini_search_path = NULL; char *open_basedir; int free_ini_search_path = 0; @@ -284,6 +285,7 @@ int php_init_config(TSRMLS_D) open_basedir = PG(open_basedir); if (sapi_module.php_ini_path_override) { + php_ini_file_name = sapi_module.php_ini_path_override; php_ini_search_path = sapi_module.php_ini_path_override; free_ini_search_path = 0; } else if (!sapi_module.php_ini_ignore) { @@ -314,6 +316,7 @@ int php_init_config(TSRMLS_D) strcat(php_ini_search_path, paths_separator); } strcat(php_ini_search_path, env_location); + php_ini_file_name = env_location; } #ifdef PHP_WIN32 @@ -418,13 +421,15 @@ int php_init_config(TSRMLS_D) memset(&fh, 0, sizeof(fh)); /* Check if php_ini_path_override is a file */ if (!sapi_module.php_ini_ignore) { - if (sapi_module.php_ini_path_override && sapi_module.php_ini_path_override[0]) { + if (php_ini_file_name && php_ini_file_name[0]) { struct stat statbuf; - if (!VCWD_STAT(sapi_module.php_ini_path_override, &statbuf)) { + if (!VCWD_STAT(php_ini_file_name, &statbuf)) { if (!((statbuf.st_mode & S_IFMT) == S_IFDIR)) { - fh.handle.fp = VCWD_FOPEN(sapi_module.php_ini_path_override, "r"); - fh.filename = sapi_module.php_ini_path_override; + fh.handle.fp = VCWD_FOPEN(php_ini_file_name, "r"); + if (fh.handle.fp) { + fh.filename = php_ini_opened_path = expand_filepath(php_ini_file_name, NULL TSRMLS_CC); + } } } }