diff options
-rw-r--r-- | ext/tidy/config.m4 | 2 | ||||
-rw-r--r-- | ext/tidy/config.w32 | 1 | ||||
-rw-r--r-- | ext/tidy/php_tidy.h | 5 | ||||
-rw-r--r-- | ext/tidy/tidy.c | 7 |
4 files changed, 13 insertions, 2 deletions
diff --git a/ext/tidy/config.m4 b/ext/tidy/config.m4 index 102f6a827e..b09622af3e 100644 --- a/ext/tidy/config.m4 +++ b/ext/tidy/config.m4 @@ -38,7 +38,7 @@ if test "$PHP_TIDY" != "no"; then ],[],[]) - PHP_NEW_EXTENSION(tidy, tidy.c, $ext_shared) + PHP_NEW_EXTENSION(tidy, tidy.c, $ext_shared, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1) PHP_SUBST(TIDY_SHARED_LIBADD) AC_DEFINE(HAVE_TIDY,1,[ ]) fi diff --git a/ext/tidy/config.w32 b/ext/tidy/config.w32 index 41f217588d..a87a833f92 100644 --- a/ext/tidy/config.w32 +++ b/ext/tidy/config.w32 @@ -12,6 +12,7 @@ if (PHP_TIDY != "no") { )) { EXTENSION("tidy", "tidy.c"); AC_DEFINE('HAVE_TIDY', 1, 'Have TIDY library'); + ADD_FLAG('CFLAGS_TIDY', '/DZEND_ENABLE_STATIC_TSRMLS_CACHE=1'); if (!PHP_TIDY_SHARED) { ADD_DEF_FILE("ext\\tidy\\php_tidy.def"); } diff --git a/ext/tidy/php_tidy.h b/ext/tidy/php_tidy.h index cd78f37a17..77de84de9c 100644 --- a/ext/tidy/php_tidy.h +++ b/ext/tidy/php_tidy.h @@ -40,7 +40,10 @@ ZEND_BEGIN_MODULE_GLOBALS(tidy) ZEND_END_MODULE_GLOBALS(tidy) #ifdef ZTS -#define TG(v) TSRMG(tidy_globals_id, zend_tidy_globals *, v) +#define TG(v) ZEND_TSRMG(tidy_globals_id, zend_tidy_globals *, v) +#ifdef COMPILE_DL_TIDY +ZEND_TSRMLS_CACHE_EXTERN; +#endif #else #define TG(v) (tidy_globals.v) #endif diff --git a/ext/tidy/tidy.c b/ext/tidy/tidy.c index 63ccf52370..c8f1ec665e 100644 --- a/ext/tidy/tidy.c +++ b/ext/tidy/tidy.c @@ -467,6 +467,9 @@ zend_module_entry tidy_module_entry = { }; #ifdef COMPILE_DL_TIDY +#ifdef ZTS +ZEND_TSRMLS_CACHE_DEFINE; +#endif ZEND_GET_MODULE(tidy) #endif @@ -1053,6 +1056,10 @@ static PHP_MINIT_FUNCTION(tidy) static PHP_RINIT_FUNCTION(tidy) { +#if defined(COMPILE_DL_TIDY) && defined(ZTS) + ZEND_TSRMLS_CACHE_UPDATE; +#endif + php_tidy_clean_output_start(ZEND_STRL("ob_tidyhandler") TSRMLS_CC); return SUCCESS; |