diff options
| -rw-r--r-- | ext/standard/basic_functions.c | 11 | ||||
| -rw-r--r-- | main/fopen_wrappers.c | 3 | ||||
| -rw-r--r-- | main/main.c | 3 | 
3 files changed, 8 insertions, 9 deletions
| diff --git a/ext/standard/basic_functions.c b/ext/standard/basic_functions.c index 2e9e2f6155..bdf2fbb7cc 100644 --- a/ext/standard/basic_functions.c +++ b/ext/standard/basic_functions.c @@ -746,6 +746,12 @@ PHP_MSHUTDOWN_FUNCTION(basic)  	ts_free_id(basic_globals_id);  #endif +	if(PG(allow_url_fopen)) { +		php_unregister_url_wrapper("http"); +		php_unregister_url_wrapper("ftp"); +		php_unregister_url_wrapper("php"); +	} +  	UNREGISTER_INI_ENTRIES();  	PHP_MSHUTDOWN(regex)(SHUTDOWN_FUNC_ARGS_PASSTHRU); @@ -754,11 +760,6 @@ PHP_MSHUTDOWN_FUNCTION(basic)  	PHP_MSHUTDOWN(array)(SHUTDOWN_FUNC_ARGS_PASSTHRU);  	PHP_MSHUTDOWN(assert)(SHUTDOWN_FUNC_ARGS_PASSTHRU); -	if(PG(allow_url_fopen)) { -		php_unregister_url_wrapper("http"); -		php_unregister_url_wrapper("ftp"); -		php_unregister_url_wrapper("php"); -	}  	return SUCCESS;	  } diff --git a/main/fopen_wrappers.c b/main/fopen_wrappers.c index 974f0c47c7..716f3ba679 100644 --- a/main/fopen_wrappers.c +++ b/main/fopen_wrappers.c @@ -110,9 +110,8 @@ PHPAPI int php_unregister_url_wrapper(char *protocol)  int php_init_fopen_wrappers(void)   { -	PLS_FETCH(); -  	int status = SUCCESS; +	PLS_FETCH();  	if(PG(allow_url_fopen)) {  		if (zend_hash_init(&fopen_url_wrappers_hash, 0, NULL, NULL, 1)==FAILURE) { diff --git a/main/main.c b/main/main.c index f32789ba90..d2e18fcffd 100644 --- a/main/main.c +++ b/main/main.c @@ -916,8 +916,6 @@ void php_module_shutdown()  		return;  	} -	php_shutdown_fopen_wrappers(); -  	/* close down the ini config */  	php_config_ini_shutdown(); @@ -931,6 +929,7 @@ void php_module_shutdown()  	global_lock_destroy();  	zend_shutdown(); +	php_shutdown_fopen_wrappers();  	UNREGISTER_INI_ENTRIES();  	php_ini_mshutdown();  	shutdown_memory_manager(0, 1); | 
