aboutsummaryrefslogtreecommitdiffstats
path: root/phpBB/includes/error_collector.php
diff options
context:
space:
mode:
authorAndreas Fischer <bantu@phpbb.com>2011-09-18 00:55:24 +0200
committerAndreas Fischer <bantu@phpbb.com>2011-09-18 22:23:41 +0200
commit7b3f6cb219cac448ba470f016ed5068bdc7ffc56 (patch)
tree3430398dfb2211a838b9b36a38cf0311fe6d2bc4 /phpBB/includes/error_collector.php
parenteb8b1c333fac415a4c4db22559d625cc50a9f9b6 (diff)
downloadforums-7b3f6cb219cac448ba470f016ed5068bdc7ffc56.tar
forums-7b3f6cb219cac448ba470f016ed5068bdc7ffc56.tar.gz
forums-7b3f6cb219cac448ba470f016ed5068bdc7ffc56.tar.bz2
forums-7b3f6cb219cac448ba470f016ed5068bdc7ffc56.tar.xz
forums-7b3f6cb219cac448ba470f016ed5068bdc7ffc56.zip
[ticket/10369] Always include errfile and errline in format_errors().
We remove the phpBB root path from errfile. This is consistent with how msg_handler handles E_WARNING messages etc. PHPBB3-10369
Diffstat (limited to 'phpBB/includes/error_collector.php')
-rw-r--r--phpBB/includes/error_collector.php14
1 files changed, 9 insertions, 5 deletions
diff --git a/phpBB/includes/error_collector.php b/phpBB/includes/error_collector.php
index 55834f354c..534df27ece 100644
--- a/phpBB/includes/error_collector.php
+++ b/phpBB/includes/error_collector.php
@@ -42,6 +42,8 @@ class phpbb_error_collector
function format_errors()
{
+ $phpbb_root_path = phpbb_realpath(dirname(__FILE__) . '/../');
+
$text = '';
foreach ($this->errors as $error)
{
@@ -49,13 +51,15 @@ class phpbb_error_collector
{
$text .= "<br />\n";
}
+
list($errno, $msg_text, $errfile, $errline) = $error;
- $text .= "Errno $errno: $msg_text";
- if (defined('DEBUG_EXTRA') || defined('IN_INSTALL'))
- {
- $text .= " at $errfile line $errline";
- }
+
+ // Prevent leakage of local path to phpBB install
+ $errfile = str_replace(array($phpbb_root_path, '\\'), array('', '/'), $errfile);
+
+ $text .= "Errno $errno: $msg_text at $errfile line $errline";
}
+
return $text;
}
}