zend_hash_add(GLOBAL_CLASS_TABLE, "stdclass", sizeof("stdclass"), &zend_standard_class_def, sizeof(zend_class_entry *), NULL);
}
+static void unregister_standard_class()
+{
+ destroy_zend_class(&zend_standard_class_def);
+}
static void zend_set_default_compile_time_values(TSRMLS_D)
{
zend_hash_graceful_reverse_destroy(&module_registry);
zend_destroy_rsrc_list_dtors();
-#ifndef ZTS
- /* In ZTS mode these are freed by compiler_globals_dtor() */
zend_hash_destroy(GLOBAL_FUNCTION_TABLE);
zend_hash_destroy(GLOBAL_CLASS_TABLE);
-#endif
zend_hash_destroy(GLOBAL_AUTO_GLOBALS_TABLE);
free(GLOBAL_AUTO_GLOBALS_TABLE);
zend_shutdown_extensions(TSRMLS_C);
free(zend_version_info);
+
zend_shutdown_constants(TSRMLS_C);
+#ifdef ZTS
+ zend_hash_destroy(GLOBAL_CONSTANTS_TABLE);
+#endif
+ unregister_standard_class();
}
free(ce->static_members);
zend_hash_destroy(&ce->constants_table);
zend_hash_destroy(&ce->class_table);
+ if (ce->num_interfaces > 0) {
+ free(ce->interfaces);
+ }
+ if (ce->doc_comment) {
+ free(ce->doc_comment);
+ }
free(ce);
break;
case ZEND_USER_NAMESPACE: