diff --git a/phpBB/includes/db/dbal.php b/phpBB/includes/db/dbal.php index bce4398cb3..6a573f42b4 100644 --- a/phpBB/includes/db/dbal.php +++ b/phpBB/includes/db/dbal.php @@ -232,6 +232,15 @@ class dbal $this->sql_transaction('rollback'); } + if (strlen($message) > 1024) + { + // We need to define $msg_long_text here to circumvent text stripping. + global $msg_long_text; + $msg_long_text = $message; + + trigger_error(false, E_USER_ERROR); + } + trigger_error($message, E_USER_ERROR); } diff --git a/phpBB/includes/functions.php b/phpBB/includes/functions.php index c139eb5a11..1a2d927c99 100644 --- a/phpBB/includes/functions.php +++ b/phpBB/includes/functions.php @@ -1635,7 +1635,13 @@ function add_log() function msg_handler($errno, $msg_text, $errfile, $errline) { global $cache, $db, $auth, $template, $config, $user; - global $phpEx, $phpbb_root_path, $starttime, $msg_title; + global $phpEx, $phpbb_root_path, $starttime, $msg_title, $msg_long_text; + + // Message handler is stripping text. In case we need it, we are possible to define long text... + if (isset($msg_long_text) && $msg_long_text && !$msg_text) + { + $msg_text = $msg_long_text; + } switch ($errno) {