aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/template/template.php
diff options
context:
space:
mode:
Diffstat (limited to 'phpBB/includes/template/template.php')
-rw-r--r--phpBB/includes/template/template.php27
1 files changed, 11 insertions, 16 deletions
diff --git a/phpBB/includes/template/template.php b/phpBB/includes/template/template.php
index 0495ade9c5..ec5fbe2829 100644
--- a/phpBB/includes/template/template.php
+++ b/phpBB/includes/template/template.php
@@ -307,36 +307,31 @@ class phpbb_template
*/
private function _tpl_load($handle)
{
- $virtual_source_file = $this->locator->get_virtual_source_file_for_handle($handle);
- $source_file = null;
-
- $compiled_path = $this->cachepath . str_replace('/', '.', $virtual_source_file) . '.' . $this->phpEx;
+ $output_file = $this->_compiled_file_for_handle($handle);
$recompile = defined('DEBUG_EXTRA') ||
- !file_exists($compiled_path) ||
- @filesize($compiled_path) === 0 ||
- ($this->config['load_tplcompile'] && @filemtime($compiled_path) < @filemtime($source_file));
+ !file_exists($output_file) ||
+ @filesize($output_file) === 0;
- if (!$recompile && $this->config['load_tplcompile'])
+ if ($recompile || $this->config['load_tplcompile'])
{
+ // Set only if a recompile or an mtime check are required.
$source_file = $this->locator->get_source_file_for_handle($handle);
- $recompile = (@filemtime($compiled_path) < @filemtime($source_file)) ? true : false;
+
+ if (!$recompile && @filemtime($output_file) < @filemtime($source_file))
+ {
+ $recompile = true;
+ }
}
// Recompile page if the original template is newer, otherwise load the compiled version
if (!$recompile)
{
- return new phpbb_template_renderer_include($compiled_path, $this);
- }
-
- if ($source_file === null)
- {
- $source_file = $this->locator->get_source_file_for_handle($handle);
+ return new phpbb_template_renderer_include($output_file, $this);
}
$compile = new phpbb_template_compile($this->config['tpl_allow_php']);
- $output_file = $this->_compiled_file_for_handle($handle);
if ($compile->compile_file_to_file($source_file, $output_file) !== false)
{
$renderer = new phpbb_template_renderer_include($output_file, $this);