diff --git a/phpBB/includes/functions_messenger.php b/phpBB/includes/functions_messenger.php index b306b9aa79..7ed9a772ec 100644 --- a/phpBB/includes/functions_messenger.php +++ b/phpBB/includes/functions_messenger.php @@ -873,6 +873,11 @@ class queue fwrite($fp, "queue_data = unserialize(" . var_export(serialize($this->queue_data), true) . ");\n\n?>"); fclose($fp); + if (function_exists('opcache_invalidate')) + { + @opcache_invalidate($this->cache_file); + } + try { $this->filesystem->phpbb_chmod($this->cache_file, CHMOD_READ | CHMOD_WRITE); @@ -922,6 +927,11 @@ class queue fwrite($fp, "queue_data = unserialize(" . var_export(serialize($this->data), true) . ");\n\n?>"); fclose($fp); + if (function_exists('opcache_invalidate')) + { + @opcache_invalidate($this->cache_file); + } + try { $this->filesystem->phpbb_chmod($this->cache_file, CHMOD_READ | CHMOD_WRITE); diff --git a/phpBB/phpbb/cache/driver/base.php b/phpBB/phpbb/cache/driver/base.php index 85762c4d95..f4b3dc278d 100644 --- a/phpBB/phpbb/cache/driver/base.php +++ b/phpBB/phpbb/cache/driver/base.php @@ -63,6 +63,11 @@ abstract class base implements \phpbb\cache\driver\driver_interface unset($this->sql_rowset); unset($this->sql_row_pointer); + if (function_exists('opcache_reset')) + { + @opcache_reset(); + } + $this->vars = array(); $this->sql_rowset = array(); $this->sql_row_pointer = array(); diff --git a/phpBB/phpbb/cache/driver/file.php b/phpBB/phpbb/cache/driver/file.php index bb055d3acf..d994394249 100644 --- a/phpBB/phpbb/cache/driver/file.php +++ b/phpBB/phpbb/cache/driver/file.php @@ -574,6 +574,11 @@ class file extends \phpbb\cache\driver\base fclose($handle); + if (function_exists('opcache_invalidate')) + { + @opcache_invalidate($this->cache_file); + } + try { $this->filesystem->phpbb_chmod($file, CHMOD_READ | CHMOD_WRITE);