summaryrefslogtreecommitdiff
path: root/ext/opcache/zend_shared_alloc.c
diff options
context:
space:
mode:
authorDmitry Stogov <dmitry@zend.com>2019-02-12 10:22:13 +0300
committerDmitry Stogov <dmitry@zend.com>2019-02-12 10:22:13 +0300
commit26e26969c1abd062d56aaf8650240d54fae5d9f3 (patch)
tree5a2db3bb300d1b876c02ad9debb7bccaf7b78f3d /ext/opcache/zend_shared_alloc.c
parent8724f9b38ea3ba9a3ecea5488515f6b854fa5dc6 (diff)
parent470f5891d48cad64fd73dbb34775b3bcce1337cf (diff)
downloadphp-git-26e26969c1abd062d56aaf8650240d54fae5d9f3.tar.gz
Merge branch 'PHP-7.3' into PHP-7.4
* PHP-7.3: Avoid dependency on "struct flock" fields order.
Diffstat (limited to 'ext/opcache/zend_shared_alloc.c')
-rw-r--r--ext/opcache/zend_shared_alloc.c21
1 files changed, 15 insertions, 6 deletions
diff --git a/ext/opcache/zend_shared_alloc.c b/ext/opcache/zend_shared_alloc.c
index 9f71cf6736..177cbcc46f 100644
--- a/ext/opcache/zend_shared_alloc.c
+++ b/ext/opcache/zend_shared_alloc.c
@@ -435,15 +435,15 @@ void zend_shared_alloc_safe_unlock(void)
}
}
-#ifndef ZEND_WIN32
-/* name l_type l_whence l_start l_len */
-static FLOCK_STRUCTURE(mem_write_lock, F_WRLCK, SEEK_SET, 0, 1);
-static FLOCK_STRUCTURE(mem_write_unlock, F_UNLCK, SEEK_SET, 0, 1);
-#endif
-
void zend_shared_alloc_lock(void)
{
#ifndef ZEND_WIN32
+ struct flock mem_write_lock;
+
+ mem_write_lock.l_type = F_WRLCK;
+ mem_write_lock.l_whence = SEEK_SET;
+ mem_write_lock.l_start = 0;
+ mem_write_lock.l_len = 1;
#ifdef ZTS
tsrm_mutex_lock(zts_lock);
@@ -474,6 +474,15 @@ void zend_shared_alloc_lock(void)
void zend_shared_alloc_unlock(void)
{
+#ifndef ZEND_WIN32
+ struct flock mem_write_unlock;
+
+ mem_write_unlock.l_type = F_UNLCK;
+ mem_write_unlock.l_whence = SEEK_SET;
+ mem_write_unlock.l_start = 0;
+ mem_write_unlock.l_len = 1;
+#endif
+
ZCG(locked) = 0;
#ifndef ZEND_WIN32