ZEND_API int zend_disable_class(char *class_name, uint class_name_length TSRMLS_DC)
{
- zend_class_entry *disabled_class;
- disabled_class = (zend_class_entry *) emalloc(sizeof(zend_class_entry));
+ zend_class_entry disabled_class;
zend_str_tolower(class_name, class_name_length);
if (zend_hash_del(CG(class_table), class_name, class_name_length+1)==FAILURE) {
return FAILURE;
}
- INIT_CLASS_ENTRY((*disabled_class), class_name, disabled_class_new);
- disabled_class->create_object = display_disabled_class;
- disabled_class->name_length = class_name_length;
- zend_register_internal_class(disabled_class TSRMLS_CC);
- return 1;
+ INIT_CLASS_ENTRY(disabled_class, class_name, disabled_class_new);
+ disabled_class.create_object = display_disabled_class;
+ disabled_class.name_length = class_name_length;
+ zend_register_internal_class(&disabled_class TSRMLS_CC);
+ return SUCCESS;
}
static int zend_is_callable_check_func(int check_flags, zval ***zobj_ptr_ptr, zend_class_entry *ce_org, zval *callable, zend_class_entry **ce_ptr, zend_function **fptr_ptr TSRMLS_DC)