zend_module_entry *(*get_module)(void);
int error_type;
char *extension_dir;
- int name_len;
- char *lcname;
if (type==MODULE_PERSISTENT) {
/* Use the configuration hash directly, the INI mechanism is not yet initialized */
DL_UNLOAD(handle);
RETURN_FALSE;
}
- name_len = strlen(module_entry->name);
- lcname = zend_str_tolower_dup(module_entry->name, name_len);
- if (zend_hash_exists(&module_registry, lcname, name_len+1)) {
- efree(lcname);
- php_error_docref(NULL TSRMLS_CC, error_type, "Module '%s' already loaded", module_entry->name);
- DL_UNLOAD(handle);
- RETURN_FALSE;
- }
- efree(lcname);
Z_TYPE_P(module_entry) = type;
module_entry->module_number = zend_next_free_module();
- if (module_entry->module_startup_func) {
- if (module_entry->module_startup_func(type, module_entry->module_number TSRMLS_CC)==FAILURE) {
- php_error_docref(NULL TSRMLS_CC, error_type, "Unable to initialize module '%s'", module_entry->name);
- DL_UNLOAD(handle);
- RETURN_FALSE;
- }
- }
- zend_register_module(module_entry);
+ zend_register_module_ex(module_entry TSRMLS_CC);
if ((type == MODULE_TEMPORARY) && module_entry->request_startup_func) {
if (module_entry->request_startup_func(type, module_entry->module_number TSRMLS_CC)) {