mirror of
https://github.com/php/php-src.git
synced 2024-11-25 10:54:15 +08:00
- #48779, fix another use case where / usage may differ
This commit is contained in:
parent
ef1731590a
commit
e4adfe4f61
@ -793,10 +793,18 @@ PHPAPI void php_ini_activate_per_dir_config(char *path, uint path_len TSRMLS_DC)
|
||||
zval *tmp;
|
||||
char *ptr;
|
||||
|
||||
#if PHP_WIN32
|
||||
char path_bak[MAXPATHLEN];
|
||||
memcpy(path_bak, path, path_len);
|
||||
path_bak[path_len] = 0;
|
||||
TRANSLATE_SLASHES_LOWER(path_bak);
|
||||
path = path_bak;
|
||||
#endif
|
||||
|
||||
/* Walk through each directory in path and apply any found per-dir-system-configuration from configuration_hash */
|
||||
if (has_per_dir_config && path && path_len) {
|
||||
ptr = path + 1;
|
||||
while ((ptr = strchr(ptr, DEFAULT_SLASH)) != NULL) {
|
||||
while ((ptr = strchr(ptr, '/')) != NULL) {
|
||||
*ptr = 0;
|
||||
/* Search for source array matching the path from configuration_hash */
|
||||
if (zend_hash_find(&configuration_hash, path, path_len, (void **) &tmp) == SUCCESS) {
|
||||
|
@ -818,10 +818,6 @@ static int sapi_cgi_activate(TSRMLS_D)
|
||||
path_len = zend_dirname(path, path_len);
|
||||
}
|
||||
path[path_len] = 0;
|
||||
#ifdef PHP_WIN32
|
||||
/* paths on windows should be case-insensitive */
|
||||
zend_str_tolower(path, path_len);
|
||||
#endif
|
||||
|
||||
/* Activate per-dir-system-configuration defined in php.ini and stored into configuration_hash during startup */
|
||||
php_ini_activate_per_dir_config(path, path_len TSRMLS_CC); /* Note: for global settings sake we check from root to path */
|
||||
|
Loading…
Reference in New Issue
Block a user