summaryrefslogtreecommitdiff
path: root/ext/recode
diff options
context:
space:
mode:
Diffstat (limited to 'ext/recode')
-rw-r--r--ext/recode/config.m42
-rw-r--r--ext/recode/recode.c12
2 files changed, 8 insertions, 6 deletions
diff --git a/ext/recode/config.m4 b/ext/recode/config.m4
index 8507577607..537da2ead2 100644
--- a/ext/recode/config.m4
+++ b/ext/recode/config.m4
@@ -59,5 +59,5 @@ recode_format_table();
PHP_ADD_INCLUDE($RECODE_DIR/$RECODE_INC)
PHP_SUBST(RECODE_SHARED_LIBADD)
AC_CHECK_HEADERS(stdbool.h)
- PHP_NEW_EXTENSION(recode, recode.c, $ext_shared)
+ PHP_NEW_EXTENSION(recode, recode.c, $ext_shared,, -DZEND_ENABLE_STATIC_TSRMLS_CACHE=1)
fi
diff --git a/ext/recode/recode.c b/ext/recode/recode.c
index 5330a6e20a..74a1f1eded 100644
--- a/ext/recode/recode.c
+++ b/ext/recode/recode.c
@@ -55,11 +55,7 @@ ZEND_BEGIN_MODULE_GLOBALS(recode)
RECODE_OUTER outer;
ZEND_END_MODULE_GLOBALS(recode)
-#ifdef ZTS
-# define ReSG(v) TSRMG(recode_globals_id, zend_recode_globals *, v)
-#else
-# define ReSG(v) (recode_globals.v)
-#endif
+#define ReSG(v) ZEND_MODULE_GLOBALS_ACCESSOR(recode, v)
ZEND_DECLARE_MODULE_GLOBALS(recode)
static PHP_GINIT_FUNCTION(recode);
@@ -103,11 +99,17 @@ zend_module_entry recode_module_entry = {
};
#ifdef COMPILE_DL_RECODE
+#ifdef ZTS
+ZEND_TSRMLS_CACHE_DEFINE()
+#endif
ZEND_GET_MODULE(recode)
#endif
static PHP_GINIT_FUNCTION(recode)
{
+#if defined(COMPILE_DL_RECODE) && defined(ZTS)
+ ZEND_TSRMLS_CACHE_UPDATE();
+#endif
recode_globals->outer = NULL;
}