]> granicus.if.org Git - php/commitdiff
MFB: fix #37418 (tidy module crashes CLI version of PHP)
authorAntony Dovgal <tony2001@php.net>
Wed, 24 May 2006 21:22:27 +0000 (21:22 +0000)
committerAntony Dovgal <tony2001@php.net>
Wed, 24 May 2006 21:22:27 +0000 (21:22 +0000)
ext/tidy/php_tidy.h
ext/tidy/tidy.c

index d038be22544bbd60a1d45961310cca5306dfa847..959273980fcedee481e63d76d49e7252359e65f2 100644 (file)
@@ -40,6 +40,7 @@ extern zend_module_entry tidy_module_entry;
 #define TIDY_ATTR_ME(name, param) TIDY_METHOD_MAP(name, tam_ ##name, param)
 
 PHP_MINIT_FUNCTION(tidy);
+PHP_MSHUTDOWN_FUNCTION(tidy);
 PHP_RINIT_FUNCTION(tidy);
 PHP_MINFO_FUNCTION(tidy);
 
index 4de4555efe2a4543e66e4f61a523e272f057ea47..71da10f2efdd826d6d565d2a94c66b052d5f2ee8 100644 (file)
@@ -330,7 +330,7 @@ zend_module_entry tidy_module_entry = {
        "tidy",
        tidy_functions,
        PHP_MINIT(tidy),
-       NULL,
+       PHP_MSHUTDOWN(tidy),
        PHP_RINIT(tidy),
        NULL,
        PHP_MINFO(tidy),
@@ -993,6 +993,17 @@ PHP_RINIT_FUNCTION(tidy)
        return SUCCESS;
 }
 
+PHP_MSHUTDOWN_FUNCTION(tidy)
+{
+#ifdef ZTS
+       ts_free_id(tidy_globals_id);
+#else
+       tidy_globals_dtor(&tidy_globals TSRMLS_CC);
+#endif
+       UNREGISTER_INI_ENTRIES();
+       return SUCCESS;
+}
+
 PHP_MINFO_FUNCTION(tidy)
 {
        php_info_print_table_start();