X-Git-Url: http://git.pld-linux.org/?a=blobdiff_plain;f=php-config-file-scan-dir.patch;h=12d15aa59ef70d7aa1a2ebd9001f4992b39dcb4d;hb=refs%2Ftags%2Fauto%2Fth%2Fphp53-5.3.28-11;hp=8c1c85b0b3cf5a2898a5a09ef37eed30cd4756c6;hpb=bf52cc5df6746e2d0af59dd8eca5669c34cbe38b;p=packages%2Fphp.git diff --git a/php-config-file-scan-dir.patch b/php-config-file-scan-dir.patch index 8c1c85b..12d15aa 100644 --- a/php-config-file-scan-dir.patch +++ b/php-config-file-scan-dir.patch @@ -17,8 +17,8 @@ - static const char paths_separator[] = { ZEND_PATHS_SEPARATOR, 0 }; #ifdef PHP_WIN32 char *reg_location; - #endif -@@ -608,72 +608,83 @@ + char phprc_path[MAXPATHLEN]; +@@ -608,72 +608,86 @@ /* Scan and parse any .ini files found in scan path if path not empty. */ if (!sapi_module.php_ini_ignore && php_ini_scanned_path_len) { @@ -28,17 +28,14 @@ char ini_file[MAXPATHLEN]; - char *p; + char *p, *last, *path_copy, *ini_path = NULL; - zend_file_handle fh; + zend_file_handle fh2; zend_llist scanned_ini_list; zend_llist_element *element; int l, total_l = 0; -- /* Reset active ini section */ -- RESET_ACTIVE_INI_HASH(); -- - if ((ndir = php_scandir(php_ini_scanned_path, &namelist, 0, php_alphasort)) > 0) { - zend_llist_init(&scanned_ini_list, sizeof(char *), (llist_dtor_func_t) free_estring, 1); -- memset(&fh, 0, sizeof(fh)); +- memset(&fh2, 0, sizeof(fh2)); - - for (i = 0; i < ndir; i++) { - @@ -47,6 +44,9 @@ - free(namelist[i]); - continue; - } +- /* Reset active ini section */ +- RESET_ACTIVE_INI_HASH(); +- - if (IS_SLASH(php_ini_scanned_path[php_ini_scanned_path_len - 1])) { - snprintf(ini_file, MAXPATHLEN, "%s%s", php_ini_scanned_path, namelist[i]->d_name); - } else { @@ -54,11 +54,11 @@ - } - if (VCWD_STAT(ini_file, &sb) == 0) { - if (S_ISREG(sb.st_mode)) { -- if ((fh.handle.fp = VCWD_FOPEN(ini_file, "r"))) { -- fh.filename = ini_file; -- fh.type = ZEND_HANDLE_FP; +- if ((fh2.handle.fp = VCWD_FOPEN(ini_file, "r"))) { +- fh2.filename = ini_file; +- fh2.type = ZEND_HANDLE_FP; - -- if (zend_parse_ini_file(&fh, 1, ZEND_INI_SCANNER_NORMAL, (zend_ini_parser_cb_t) php_ini_parser_cb, &configuration_hash TSRMLS_CC) == SUCCESS) { +- if (zend_parse_ini_file(&fh2, 1, ZEND_INI_SCANNER_NORMAL, (zend_ini_parser_cb_t) php_ini_parser_cb, &configuration_hash TSRMLS_CC) == SUCCESS) { - /* Here, add it to the list of ini files read */ - l = strlen(ini_file); - total_l += l + 2; @@ -76,7 +76,7 @@ + int ini_path_len = strlen(ini_path); + + if ((ndir = php_scandir(ini_path, &namelist, 0, php_alphasort)) > 0) { -+ memset(&fh, 0, sizeof(fh)); ++ memset(&fh2, 0, sizeof(fh2)); + + for (i = 0; i < ndir; i++) { + /* check for any file with .ini extension */ @@ -84,6 +84,9 @@ + free(namelist[i]); + continue; + } ++ /* Reset active ini section */ ++ RESET_ACTIVE_INI_HASH(); ++ + if (IS_SLASH(ini_path[ini_path_len - 1])) { + snprintf(ini_file, MAXPATHLEN, "%s%s", ini_path, namelist[i]->d_name); + } else { @@ -91,14 +94,14 @@ + } + if (VCWD_STAT(ini_file, &sb) == 0) { + if (S_ISREG(sb.st_mode)) { -+ if ((fh.handle.fp = VCWD_FOPEN(ini_file, "r"))) { -+ fh.filename = ini_file; -+ fh.type = ZEND_HANDLE_FP; ++ if ((fh2.handle.fp = VCWD_FOPEN(ini_file, "r"))) { ++ fh2.filename = ini_file; ++ fh2.type = ZEND_HANDLE_FP; + + /* Reset active ini section */ + RESET_ACTIVE_INI_HASH(); + -+ if (zend_parse_ini_file(&fh, 1, ZEND_INI_SCANNER_NORMAL, (zend_ini_parser_cb_t) php_ini_parser_cb, &configuration_hash TSRMLS_CC) == SUCCESS) { ++ if (zend_parse_ini_file(&fh2, 1, ZEND_INI_SCANNER_NORMAL, (zend_ini_parser_cb_t) php_ini_parser_cb, &configuration_hash TSRMLS_CC) == SUCCESS) { + /* Here, add it to the list of ini files read */ + l = strlen(ini_file); + total_l += l + 2;