From e1fcb9ea66384269e5afa22769bb95cf2eb08306 Mon Sep 17 00:00:00 2001 From: Anatol Belski Date: Wed, 17 Dec 2014 12:37:50 +0100 Subject: integrated the static tsrmls cache into ext/skel --- ext/skeleton/php_skeleton.h | 14 ++++++-------- ext/skeleton/skeleton.c | 6 ++++++ 2 files changed, 12 insertions(+), 8 deletions(-) (limited to 'ext/skeleton') diff --git a/ext/skeleton/php_skeleton.h b/ext/skeleton/php_skeleton.h index 7d9b0bce4a..3d23493b68 100644 --- a/ext/skeleton/php_skeleton.h +++ b/ext/skeleton/php_skeleton.h @@ -30,18 +30,16 @@ ZEND_BEGIN_MODULE_GLOBALS(extname) ZEND_END_MODULE_GLOBALS(extname) */ -/* In every utility function you add that needs to use variables - in php_extname_globals, call TSRMLS_FETCH(); after declaring other - variables used by that function, or better yet, pass in - after the last function argument and declare your utility function - with after the last declared argument. Always refer to - the globals in your function as EXTNAME_G(variable). You are - encouraged to rename these macros something shorter, see +/* Always refer to the globals in your function as EXTNAME_G(variable). + You are encouraged to rename these macros something shorter, see examples in any other php module directory. */ #ifdef ZTS -#define EXTNAME_G(v) TSRMG(extname_globals_id, zend_extname_globals *, v) +#define EXTNAME_G(v) ZEND_TSRMG(extname_globals_id, zend_extname_globals *, v) +#ifdef COMPILE_DL_EXTNAME +ZEND_TSRMLS_CACHE_EXTERN; +#endif #else #define EXTNAME_G(v) (extname_globals.v) #endif diff --git a/ext/skeleton/skeleton.c b/ext/skeleton/skeleton.c index ba49b0d31a..d432f1c3df 100644 --- a/ext/skeleton/skeleton.c +++ b/ext/skeleton/skeleton.c @@ -95,6 +95,9 @@ PHP_MSHUTDOWN_FUNCTION(extname) */ PHP_RINIT_FUNCTION(extname) { +#if defined(COMPILE_DL_EXTNAME) && defined(ZTS) + ZEND_TSRMLS_CACHE_UPDATE; +#endif return SUCCESS; } /* }}} */ @@ -150,6 +153,9 @@ zend_module_entry extname_module_entry = { /* }}} */ #ifdef COMPILE_DL_EXTNAME +#ifdef ZTS +ZEND_TSRMLS_CACHE_DEFINE; +#endif ZEND_GET_MODULE(extname) #endif -- cgit v1.2.1