diff options
author | Anatol Belski <ab@php.net> | 2016-06-23 16:47:04 +0200 |
---|---|---|
committer | Anatol Belski <ab@php.net> | 2016-06-23 16:47:04 +0200 |
commit | c9a538cdb441437181913c09bdc4425596e51f46 (patch) | |
tree | 505cd0d05b290ba752a03f436cfc8da8427d6be8 | |
parent | 35bbcd17a91340f6003379a6aafa9ad38a741e4a (diff) | |
download | php-git-c9a538cdb441437181913c09bdc4425596e51f46.tar.gz |
improve ZEND_MODULE_GLOBALS_BULK macro, fix data type
-rw-r--r-- | Zend/zend_API.h | 4 | ||||
-rw-r--r-- | Zend/zend_execute_API.c | 10 |
2 files changed, 6 insertions, 8 deletions
diff --git a/Zend/zend_API.h b/Zend/zend_API.h index 34612f879f..77127afa4b 100644 --- a/Zend/zend_API.h +++ b/Zend/zend_API.h @@ -158,7 +158,11 @@ typedef struct _zend_fcall_info_cache { #define ZEND_INIT_MODULE_GLOBALS(module_name, globals_ctor, globals_dtor) \ ts_allocate_id(&module_name##_globals_id, sizeof(zend_##module_name##_globals), (ts_allocate_ctor) globals_ctor, (ts_allocate_dtor) globals_dtor); #define ZEND_MODULE_GLOBALS_ACCESSOR(module_name, v) ZEND_TSRMG(module_name##_globals_id, zend_##module_name##_globals *, v) +#if ZEND_ENABLE_STATIC_TSRMLS_CACHE +#define ZEND_MODULE_GLOBALS_BULK(module_name) TSRMG_BULK_STATIC(module_name##_globals_id, zend_##module_name##_globals *) +#else #define ZEND_MODULE_GLOBALS_BULK(module_name) TSRMG_BULK(module_name##_globals_id, zend_##module_name##_globals *) +#endif #else diff --git a/Zend/zend_execute_API.c b/Zend/zend_execute_API.c index a914ae221a..d3dac690ca 100644 --- a/Zend/zend_execute_API.c +++ b/Zend/zend_execute_API.c @@ -1262,7 +1262,7 @@ VOID CALLBACK tq_timer_cb(PVOID arg, BOOLEAN timed_out) static void zend_set_timeout_ex(zend_long seconds, int reset_signals) /* {{{ */ { - zend_execute_data *eg; + zend_executor_globals *eg; #ifdef ZEND_WIN32 if(!seconds) { @@ -1282,13 +1282,7 @@ static void zend_set_timeout_ex(zend_long seconds, int reset_signals) /* {{{ */ } /* XXX passing NULL means the default timer queue provided by the system is used */ -#ifndef ZTS - eg = &execute_data; -#elif defined(ZEND_ENABLE_STATIC_TSRMLS_CACHE) - eg = TSRMG_BULK_STATIC(executor_globals_id, zend_executor_globals *) -#else - eg = TSRMG_BULK(executor_globals_id, zend_executor_globals *) -#endif + eg = ZEND_MODULE_GLOBALS_BULK(executor); if (!CreateTimerQueueTimer(&tq_timer, NULL, (WAITORTIMERCALLBACK)tq_timer_cb, (VOID*)eg, seconds*1000, 0, WT_EXECUTEONLYONCE)) { tq_timer = NULL; zend_error_noreturn(E_ERROR, "Could not queue new timer"); |