SOURCES: php-sapi-ini-file.patch - my version of 5.2.7 merge

glen glen at pld-linux.org
Sat Dec 6 04:01:04 CET 2008


Author: glen                         Date: Sat Dec  6 03:01:04 2008 GMT
Module: SOURCES                       Tag: HEAD
---- Log message:
- my version of 5.2.7 merge

---- Files affected:
SOURCES:
   php-sapi-ini-file.patch (1.8 -> 1.9) 

---- Diffs:

================================================================
Index: SOURCES/php-sapi-ini-file.patch
diff -u SOURCES/php-sapi-ini-file.patch:1.8 SOURCES/php-sapi-ini-file.patch:1.9
--- SOURCES/php-sapi-ini-file.patch:1.8	Sat Dec  6 00:09:23 2008
+++ SOURCES/php-sapi-ini-file.patch	Sat Dec  6 04:00:58 2008
@@ -1,20 +1,14 @@
---- php-5.2.7/main/php_ini.c.org	2008-12-05 23:30:07.843241117 +0100
-+++ php-5.2.7/main/php_ini.c	2008-12-05 23:36:18.096968965 +0100
-@@ -475,21 +475,32 @@
+--- php-5.2.7/main/php_ini.c	2008-08-14 19:34:30.000000000 +0300
++++ php-5.2.7-inidir/main/php_ini.c	2008-12-05 12:53:24.747685251 +0200
+@@ -474,6 +474,24 @@
+ 				}
  			}
  		}
- 
--		/* Otherwise search for php-%sapi-module-name%.ini file in search path */
 +		/* Search (global) php.ini file in search path */
- 		if (!fh.handle.fp) {
--			const char *fmt = "php-%s.ini";
--			char *ini_fname;
--			spprintf(&ini_fname, 0, fmt, sapi_module.name);
--			fh.handle.fp = php_fopen_with_path(ini_fname, "r", php_ini_search_path, &php_ini_opened_path TSRMLS_CC);
--			efree(ini_fname);
++		if (!fh.handle.fp) {
 +			fh.handle.fp = php_fopen_with_path("php.ini", "r", php_ini_search_path, &php_ini_opened_path TSRMLS_CC);
- 			if (fh.handle.fp) {
- 				fh.filename = php_ini_opened_path;
++			if (fh.handle.fp) {
++				fh.filename = php_ini_opened_path;
 +				PG(safe_mode) = safe_mode_state;
 +				PG(open_basedir) = open_basedir;
 +				fh.type = ZEND_HANDLE_FP;
@@ -26,22 +20,27 @@
 +				fh.handle.fp = NULL;
 +				efree(php_ini_opened_path);
 +				fh.filename = php_ini_opened_path = NULL;
- 			}
- 		}
++			}
++		}
  
--		/* If still no ini file found, search for php.ini file in search path */
-+		/* Otherwise search for php-%sapi-module-name%.ini file in search path */
+ 		/* Otherwise search for php-%sapi-module-name%.ini file in search path */
  		if (!fh.handle.fp) {
--			fh.handle.fp = php_fopen_with_path("php.ini", "r", php_ini_search_path, &php_ini_opened_path TSRMLS_CC);
-+			const char *fmt = "php-%s.ini";
-+			char *ini_fname;
-+			spprintf(&ini_fname, 0, fmt, sapi_module.name);
-+			fh.handle.fp = php_fopen_with_path(ini_fname, "r", php_ini_search_path, &php_ini_opened_path TSRMLS_CC);
-+			efree(ini_fname);
- 			if (fh.handle.fp) {
+@@ -486,14 +504,6 @@
  				fh.filename = php_ini_opened_path;
  			}
-@@ -533,9 +544,13 @@
+ 		}
+-
+-		/* If still no ini file found, search for php.ini file in search path */
+-		if (!fh.handle.fp) {
+-			fh.handle.fp = php_fopen_with_path("php.ini", "r", php_ini_search_path, &php_ini_opened_path TSRMLS_CC);
+-			if (fh.handle.fp) {
+-				fh.filename = php_ini_opened_path;
+-			}
+-		}
+ 	}
+ 
+ 	if (free_ini_search_path) {
+@@ -533,9 +543,13 @@
  	/* 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) {
  		struct dirent **namelist;
@@ -56,14 +55,23 @@
  			for (i = 0; i < ndir; i++) {
  				/* check for a .ini extension */
  				if (!(p = strrchr(namelist[i]->d_name, '.')) || (p && strcmp(p, ".ini"))) {
-@@ -564,6 +579,38 @@
- 				free(namelist[i]);
- 			}
- 			free(namelist);
+@@ -556,6 +570,35 @@
+ 							/* Here, add it to the list of ini files read */
+ 							l = strlen(ini_file);
+ 							total_l += l + 2;
++							p = estrndup(ini_file, l); 
++							zend_llist_add_element(&scanned_ini_list, &p);
++						}
++					}
++				}
++				free(namelist[i]);
++			}
++			free(namelist);
 +		}
-+		
++
 +		if ((ndir = php_scandir(sapi_scan_dir, &namelist, 0, php_alphasort)) > 0) {
 +			found += ndir;
++
 +			for (i = 0; i < ndir; i++) {
 +				/* check for a .ini extension */
 +				if (!(p = strrchr(namelist[i]->d_name, '.')) || (p && strcmp(p, ".ini"))) {
@@ -80,18 +88,19 @@
 +							/* Here, add it to the list of ini files read */
 +							l = strlen(ini_file);
 +							total_l += l + 2;
-+							p = estrndup(ini_file, l);
-+							zend_llist_add_element(&scanned_ini_list, &p);
-+						}
-+					}
-+				}
-+				free(namelist[i]);
-+			}
-+			free(namelist);
+ 							p = estrndup(ini_file, l);
+ 							zend_llist_add_element(&scanned_ini_list, &p);
+ 						}
+@@ -564,8 +607,11 @@
+ 				free(namelist[i]);
+ 			}
+ 			free(namelist);
 +		}
 +		efree(sapi_scan_dir);
-+
-+		if (found) {
  
- 			/*
+-			/*
++		if (found) {
++			/* 
  			 * Don't need an extra byte for the \0 in this malloc as the last
+ 			 * element will not get a trailing , which gives us the byte for the \0
+ 			 */
================================================================

---- CVS-web:
    http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/SOURCES/php-sapi-ini-file.patch?r1=1.8&r2=1.9&f=u



More information about the pld-cvs-commit mailing list