]> granicus.if.org Git - php/commitdiff
MFH: Fixed module loading order and made request shutdown functions also to
authorJani Taskinen <jani@php.net>
Wed, 13 May 2009 18:48:20 +0000 (18:48 +0000)
committerJani Taskinen <jani@php.net>
Wed, 13 May 2009 18:48:20 +0000 (18:48 +0000)
     be loaded in reverse like all other shutdowns are.

Zend/zend.c
build/order_by_dep.awk
ext/date/config0.m4 [moved from ext/date/config.m4 with 100% similarity]
ext/date/php_date.c

index 4efcae661556946502527f1e20d82265d38acb14..09524bcb4a2dd7c96775de1d9abe553a8b55a75f 100644 (file)
@@ -863,7 +863,7 @@ void zend_deactivate_modules(TSRMLS_D) /* {{{ */
        EG(opline_ptr) = NULL; /* we're no longer executing anything */
 
        zend_try {
-               zend_hash_apply(&module_registry, (apply_func_t) module_registry_cleanup TSRMLS_CC);
+               zend_hash_reverse_apply(&module_registry, (apply_func_t) module_registry_cleanup TSRMLS_CC);
        } zend_end_try();
 }
 /* }}} */
index 38128b2e1b56a1c999b93e525ac20316b56dd70d..487d055723ec7381d12351eae0fc554826f55bf0 100644 (file)
@@ -79,8 +79,7 @@ END {
        out_count = 0;
        
        while (count(mods)) {
-               # count down, since we need to assemble it in reverse order
-               for (i = mod_count-1; i >= 0; --i) {
+               for (i = 0; i <= mod_count; i++) {
                        if (i in mods) {
                                do_deps(i);
                        }
similarity index 100%
rename from ext/date/config.m4
rename to ext/date/config0.m4
index 3906dbb2bbda9985d93010d714551b6ca4f23d01..614aac889fa3e1ac47e232f861afb1f7812cf0e4 100644 (file)
@@ -563,17 +563,11 @@ static HashTable *date_object_get_properties_interval(zval *object TSRMLS_DC);
 zval *date_interval_read_property(zval *object, zval *member, int type TSRMLS_DC);
 void date_interval_write_property(zval *object, zval *member, zval *value TSRMLS_DC);
 
-/* This is need to ensure that session extension request shutdown occurs 1st, because it uses the date extension */ 
-static const zend_module_dep date_deps[] = {
-       ZEND_MOD_OPTIONAL("session")
-       {NULL, NULL, NULL}
-};
-
 /* {{{ Module struct */
 zend_module_entry date_module_entry = {
        STANDARD_MODULE_HEADER_EX,
        NULL,
-       date_deps,
+       NULL,
        "date",                     /* extension name */
        date_functions,             /* function list */
        PHP_MINIT(date),            /* process startup */