aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/acm
diff options
context:
space:
mode:
authorMeik Sievertsen <acydburn@phpbb.com>2009-03-01 13:37:53 +0000
committerMeik Sievertsen <acydburn@phpbb.com>2009-03-01 13:37:53 +0000
commit36ccf7c6d7ee7d0ee4190c0beecb864c1524f7a8 (patch)
tree222f7e63ef2aa300cc0942675a2c57d14c7e831f /phpBB/includes/acm
parentd597eacce54708f0a5e6788f9cb90c84678e94fb (diff)
downloadforums-36ccf7c6d7ee7d0ee4190c0beecb864c1524f7a8.tar
forums-36ccf7c6d7ee7d0ee4190c0beecb864c1524f7a8.tar.gz
forums-36ccf7c6d7ee7d0ee4190c0beecb864c1524f7a8.tar.bz2
forums-36ccf7c6d7ee7d0ee4190c0beecb864c1524f7a8.tar.xz
forums-36ccf7c6d7ee7d0ee4190c0beecb864c1524f7a8.zip
Fix infinite loop in message handler if cache directory is not writable. (Bug #38675)
- newer PHP versions handle this quite fine, a Fatal Error is returned in this case git-svn-id: file:///svn/phpbb/branches/phpBB-3_0_0@9353 89ea8834-ac86-4346-8a33-228a782c2dd0
Diffstat (limited to 'phpBB/includes/acm')
-rw-r--r--phpBB/includes/acm/acm_file.php7
1 files changed, 5 insertions, 2 deletions
diff --git a/phpBB/includes/acm/acm_file.php b/phpBB/includes/acm/acm_file.php
index d0cb9bd4a7..22c7ba8bda 100644
--- a/phpBB/includes/acm/acm_file.php
+++ b/phpBB/includes/acm/acm_file.php
@@ -106,10 +106,13 @@ class acm
// Now, this occurred how often? ... phew, just tell the user then...
if (!@is_writable($this->cache_dir))
{
- trigger_error($this->cache_dir . ' is NOT writable.', E_USER_ERROR);
+ // We need to use die() here, because else we may encounter an infinite loop (the message handler calls $cache->unload())
+ die($this->cache_dir . ' is NOT writable.');
+ exit;
}
- trigger_error('Not able to open ' . $this->cache_dir . 'data_global.' . $phpEx, E_USER_ERROR);
+ die('Not able to open ' . $this->cache_dir . 'data_global.' . $phpEx);
+ exit;
}
$this->is_modified = false;