From: Zeev Suraski Date: Sun, 16 Jan 2000 19:43:34 +0000 (+0000) Subject: Remove the post-startup callback support. Modules are now started only after X-Git-Tag: BEFORE_PRE_SHUTDOWN_REVERSE_PATCH~2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=2dea694ab454ce8786a9b7e58dc4da7b3fca87e0;p=php Remove the post-startup callback support. Modules are now started only after the entire engine is started. People - please make sure that the session module works properly for you. --- diff --git a/ext/session/session.c b/ext/session/session.c index ebae9bdcde..894dba2d19 100644 --- a/ext/session/session.c +++ b/ext/session/session.c @@ -1177,12 +1177,6 @@ static void php_rshutdown_session_globals(PSLS_D) zend_hash_destroy(&PS(vars)); } -void _php_session_auto_start(void *data) -{ - PSLS_FETCH(); - - _php_session_start(PSLS_C); -} void _php_session_shutdown(void *data) { @@ -1207,9 +1201,7 @@ PHP_RINIT_FUNCTION(session) return SUCCESS; } - if (INI_INT("session.auto_start")) { - php_register_post_request_startup(_php_session_auto_start, NULL); - } + _php_session_start(PSLS_C); php_register_pre_request_shutdown(_php_session_shutdown, NULL); diff --git a/main/main.c b/main/main.c index c8a9a83c9f..126e5ff121 100644 --- a/main/main.c +++ b/main/main.c @@ -670,14 +670,6 @@ static void php_execute_pre_request_shutdown(PLS_D) } } -static void php_execute_post_request_startup(PLS_D) -{ - if (PG(post_request_startup_ok)) { - zend_llist_apply(&PG(ll_post_request_startup), php_start_request_hook); - zend_llist_destroy(&PG(ll_post_request_startup)); - PG(post_request_startup_ok) = 0; - } -} void php_register_pre_request_shutdown(void (*func)(void *), void *userdata) { @@ -695,21 +687,6 @@ void php_register_pre_request_shutdown(void (*func)(void *), void *userdata) zend_llist_add_element(&PG(ll_pre_request_shutdown), &ptr); } -void php_register_post_request_startup(void (*func)(void *), void *userdata) -{ - php_request_hook ptr; - PLS_FETCH(); - - if (!PG(post_request_startup_ok)) { - zend_llist_init(&PG(ll_post_request_startup), sizeof(php_request_hook), NULL, 0); - PG(post_request_startup_ok) = 1; - } - - ptr.func = func; - ptr.userdata = userdata; - - zend_llist_add_element(&PG(ll_post_request_startup), &ptr); -} int php_request_startup(CLS_D ELS_DC PLS_DC SLS_DC) { @@ -717,8 +694,6 @@ int php_request_startup(CLS_D ELS_DC PLS_DC SLS_DC) php_output_startup(); - PG(post_request_startup_ok) = PG(pre_request_shutdown_ok) = 0; - #if APACHE /* * For the Apache module version, this bit of code registers a cleanup @@ -796,6 +771,7 @@ void php_request_shutdown(void *dummy) CLS_FETCH(); ELS_FETCH(); SLS_FETCH(); + PLS_FETCH(); php_execute_pre_request_shutdown(PLS_C); @@ -1298,7 +1274,7 @@ PHPAPI void php_execute_script(zend_file_handle *primary_file CLS_DC ELS_DC PLS_ if (EG(main_op_array)) { zend_hash_environment(PLS_C ELS_CC SLS_CC); EG(active_op_array) = EG(main_op_array); - php_execute_post_request_startup(PLS_C); + zend_activate_modules(); zend_execute(EG(main_op_array) ELS_CC); } } diff --git a/main/php.h b/main/php.h index 5f7dfc7c46..e9a099ae1f 100644 --- a/main/php.h +++ b/main/php.h @@ -319,7 +319,6 @@ int mergesort(void *base, size_t nmemb, register size_t size, int (*cmp) (const /*from basic functions*/ extern PHPAPI int _php_error_log(int opt_err,char *message,char *opt,char *headers); -PHPAPI void php_register_post_request_startup(void (*func)(void *), void *userdata); PHPAPI void php_register_pre_request_shutdown(void (*func)(void *), void *userdata); PHPAPI int cfg_get_long(char *varname, long *result); diff --git a/main/php_globals.h b/main/php_globals.h index 8273b2c8ef..f18f98249a 100644 --- a/main/php_globals.h +++ b/main/php_globals.h @@ -96,10 +96,8 @@ struct _php_core_globals { unsigned char header_is_being_sent; - zend_llist ll_post_request_startup; zend_llist ll_pre_request_shutdown; - zend_bool post_request_startup_ok; zend_bool pre_request_shutdown_ok; };