summaryrefslogtreecommitdiff
path: root/inc/cache.php
diff options
context:
space:
mode:
authorchris <chris@jalakai.co.uk>2006-09-17 21:39:34 +0200
committerchris <chris@jalakai.co.uk>2006-09-17 21:39:34 +0200
commitb9991f57a373d6e89ee328caf56b71886b95b5e7 (patch)
treebd74ac92d0c7c638b5b7cf611e9219c210df5d5c /inc/cache.php
parentf6e0e34061cd0ad2164f5b2010e111e08488fabb (diff)
downloadrpg-b9991f57a373d6e89ee328caf56b71886b95b5e7.tar.gz
rpg-b9991f57a373d6e89ee328caf56b71886b95b5e7.tar.bz2
cache.php fixes
- add code to ensure page metadata is refreshed along with cache - bug fix for missing global $conf darcs-hash:20060917193934-9b6ab-c53c8b6e4764d4c63014ecbaadf0797eb959224f.gz
Diffstat (limited to 'inc/cache.php')
-rw-r--r--inc/cache.php15
1 files changed, 13 insertions, 2 deletions
diff --git a/inc/cache.php b/inc/cache.php
index d526eed3c..01a305dfa 100644
--- a/inc/cache.php
+++ b/inc/cache.php
@@ -198,7 +198,19 @@ class cache_parser extends cache {
class cache_renderer extends cache_parser {
+ function useCache($depends=array()) {
+ $use = parent::useCache($depends);
+
+ // meta data needs to be kept in step with the cache
+ if (!$use && isset($this->page)) {
+ p_set_metadata($this->page,array(),true);
+ }
+
+ return $use;
+ }
+
function _useCache() {
+ global $conf;
if (!parent::_useCache()) return false;
@@ -226,9 +238,8 @@ class cache_renderer extends cache_parser {
// renderer cache file dependencies ...
$files = array(
- DOKU_INC.'inc/parser/'.$this->mode.'.php', // ... the renderer
+ DOKU_INC.'inc/parser/'.$this->mode.'.php', // ... the renderer
);
-
if (isset($this->page)) { $files[] = metaFN($this->page,'.meta'); } // ... the page's own metadata
$this->depends['files'] = !empty($this->depends['files']) ? array_merge($files, $this->depends['files']) : $files;