aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/cache/driver/file.php
diff options
context:
space:
mode:
authorNathan Guse <nathaniel.guse@gmail.com>2012-12-07 21:14:39 -0600
committerNathan Guse <nathaniel.guse@gmail.com>2012-12-07 21:14:39 -0600
commit0042f071476b75258f5f8ea0b5b9fcb445ffde23 (patch)
tree67cbafd7c655ad94809fef5f7dbe3a23525b232b /phpBB/includes/cache/driver/file.php
parentc911a34b5b7541b46ee2408da366d2dc7c302090 (diff)
parentb7b8fefdd084b51c93b15dfdfb34d2ef294f4d76 (diff)
downloadforums-0042f071476b75258f5f8ea0b5b9fcb445ffde23.tar
forums-0042f071476b75258f5f8ea0b5b9fcb445ffde23.tar.gz
forums-0042f071476b75258f5f8ea0b5b9fcb445ffde23.tar.bz2
forums-0042f071476b75258f5f8ea0b5b9fcb445ffde23.tar.xz
forums-0042f071476b75258f5f8ea0b5b9fcb445ffde23.zip
Merge branch 'develop' of github.com:EXreaction/phpbb3 into ticket/11103
Conflicts: phpBB/install/database_update.php phpBB/styles/prosilver/template/ucp_prefs_personal.html phpBB/styles/subsilver2/template/ucp_prefs_personal.html
Diffstat (limited to 'phpBB/includes/cache/driver/file.php')
-rw-r--r--phpBB/includes/cache/driver/file.php20
1 files changed, 13 insertions, 7 deletions
diff --git a/phpBB/includes/cache/driver/file.php b/phpBB/includes/cache/driver/file.php
index 5014ba18af..691abe0438 100644
--- a/phpBB/includes/cache/driver/file.php
+++ b/phpBB/includes/cache/driver/file.php
@@ -388,10 +388,10 @@ class phpbb_cache_driver_file extends phpbb_cache_driver_base
if ($this->_write('sql_' . md5($query), $this->sql_rowset[$query_id], $ttl + time(), $query))
{
- $query_result = $query_id;
+ return $query_id;
}
- return $query_id;
+ return $query_result;
}
/**
@@ -653,10 +653,11 @@ class phpbb_cache_driver_file extends phpbb_cache_driver_base
$file = "{$this->cache_dir}$filename.$phpEx";
+ $lock = new phpbb_lock_flock($file);
+ $lock->acquire();
+
if ($handle = @fopen($file, 'wb'))
{
- @flock($handle, LOCK_EX);
-
// File header
fwrite($handle, '<' . '?php exit; ?' . '>');
@@ -697,7 +698,6 @@ class phpbb_cache_driver_file extends phpbb_cache_driver_base
fwrite($handle, $data);
}
- @flock($handle, LOCK_UN);
fclose($handle);
if (!function_exists('phpbb_chmod'))
@@ -708,10 +708,16 @@ class phpbb_cache_driver_file extends phpbb_cache_driver_base
phpbb_chmod($file, CHMOD_READ | CHMOD_WRITE);
- return true;
+ $return_value = true;
+ }
+ else
+ {
+ $return_value = false;
}
- return false;
+ $lock->release();
+
+ return $return_value;
}
/**