]> granicus.if.org Git - php/commitdiff
Merge branch 'PHP-7.1' into PHP-7.2
authorAnatol Belski <ab@php.net>
Wed, 6 Dec 2017 15:04:22 +0000 (16:04 +0100)
committerAnatol Belski <ab@php.net>
Wed, 6 Dec 2017 15:04:22 +0000 (16:04 +0100)
* PHP-7.1:
  Fix yet one data race in PCRE

1  2 
ext/pcre/php_pcre.c

index 5ec7f4d9026ecf8208639b9a0768101398a68ca9,bf8e02c54b262cd876d4e6d33252bd32992fefd9..2fb11337995f32aaabc609168e9376b651b7bd06
@@@ -68,10 -67,10 +68,10 @@@ PHPAPI ZEND_DECLARE_MODULE_GLOBALS(pcre
  #define PCRE_JIT_STACK_MAX_SIZE (64 * 1024)
  ZEND_TLS pcre_jit_stack *jit_stack = NULL;
  #endif
- #if defined(ZTS) && defined(HAVE_PCRE_JIT_SUPPORT)
+ #if defined(ZTS)
  static MUTEX_T pcre_mt = NULL;
 -#define php_pcre_mutex_alloc() if (!pcre_mt) pcre_mt = tsrm_mutex_alloc();
 -#define php_pcre_mutex_free() if (pcre_mt) tsrm_mutex_free(pcre_mt); pcre_mt = NULL;
 +#define php_pcre_mutex_alloc() if (tsrm_is_main_thread() && !pcre_mt) pcre_mt = tsrm_mutex_alloc();
 +#define php_pcre_mutex_free() if (tsrm_is_main_thread() && pcre_mt) tsrm_mutex_free(pcre_mt); pcre_mt = NULL;
  #define php_pcre_mutex_lock() tsrm_mutex_lock(pcre_mt);
  #define php_pcre_mutex_unlock() tsrm_mutex_unlock(pcre_mt);
  #else