]> granicus.if.org Git - php/commitdiff
Use a module struct for the built-in functions
authorMarcus Boerger <helly@php.net>
Tue, 30 Dec 2008 18:17:28 +0000 (18:17 +0000)
committerMarcus Boerger <helly@php.net>
Tue, 30 Dec 2008 18:17:28 +0000 (18:17 +0000)
Zend/zend.c
Zend/zend_builtin_functions.c
Zend/zend_builtin_functions.h

index d2b9145bca484099f861dbd41028bae9c848b379..3480eaf3860cf9c2b1bbc5516497baed541c85d1 100644 (file)
@@ -1243,7 +1243,6 @@ void zend_shutdown(TSRMLS_D) /* {{{ */
 #endif
        zend_destroy_rsrc_list(&EG(persistent_list) TSRMLS_CC);
        zend_hash_graceful_reverse_destroy(&module_registry);
-       zend_shutdown_builtin_functions(TSRMLS_C);
 
        zend_hash_destroy(GLOBAL_FUNCTION_TABLE);
        zend_hash_destroy(GLOBAL_CLASS_TABLE);
index d12bb127c4b517fcb5e2ad5e77c00120b8f92d1a..52f0fb7f4e2b1e7a89a562f9eb87e33c758ddd36 100644 (file)
@@ -291,15 +291,23 @@ static const zend_function_entry builtin_functions[] = { /* {{{ */
 };
 /* }}} */
 
-int zend_startup_builtin_functions(TSRMLS_D) /* {{{ */
-{
-       return zend_register_functions(NULL, builtin_functions, NULL, MODULE_PERSISTENT TSRMLS_CC);
-}
+zend_module_entry zend_builtin_module = { /* {{{ */
+    STANDARD_MODULE_HEADER,
+       "Zend",
+       builtin_functions,
+       NULL,
+       NULL,
+       NULL,
+       NULL,
+       NULL,
+       ZEND_VERSION,
+       STANDARD_MODULE_PROPERTIES
+};
 /* }}} */
 
-void zend_shutdown_builtin_functions(TSRMLS_D) /* {{{ */
+int zend_startup_builtin_functions(TSRMLS_D) /* {{{ */
 {
-       zend_unregister_functions(builtin_functions, -1, NULL TSRMLS_CC);
+       return zend_register_internal_module(&zend_builtin_module TSRMLS_CC) == NULL ? FAILURE : SUCCESS;
 }
 /* }}} */
 
index bf46a2ffdc6e5cf7d69d69a67c5df0f655b6dcaa..deb313eeb2a4e585d5fc2d22ffb874346c9eb16f 100644 (file)
@@ -23,7 +23,6 @@
 #define ZEND_BUILTIN_FUNCTIONS_H
 
 int zend_startup_builtin_functions(TSRMLS_D);
-void zend_shutdown_builtin_functions(TSRMLS_D);
 
 BEGIN_EXTERN_C()
 ZEND_API void zend_fetch_debug_backtrace(zval *return_value, int skip_last, int provide_object TSRMLS_DC);