diff options
| author | Dmitry Stogov <dmitry@php.net> | 2006-08-03 11:04:52 +0000 | 
|---|---|---|
| committer | Dmitry Stogov <dmitry@php.net> | 2006-08-03 11:04:52 +0000 | 
| commit | c946b4d1b25fa1723d3c08b5fc3be69bb32f90c2 (patch) | |
| tree | ed457c4c84c2cac0de8309cc7a862bb367185431 /main/php_ini.c | |
| parent | bc8f1bc4f0aa0d0a72ae7e958e825cb205e149b1 (diff) | |
| download | php-git-c946b4d1b25fa1723d3c08b5fc3be69bb32f90c2.tar.gz | |
In addtion to path to php.ini, PHPRC now may specify full file name
Diffstat (limited to 'main/php_ini.c')
| -rw-r--r-- | main/php_ini.c | 13 | 
1 files changed, 9 insertions, 4 deletions
| diff --git a/main/php_ini.c b/main/php_ini.c index c4abee2b67..25fbe0f487 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;  	int safe_mode_state;  	char *open_basedir; @@ -286,6 +287,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) { @@ -316,6 +318,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 @@ -421,13 +424,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); +					}  				}  			}  		} | 
