[Console] Escape exception messages

This commit is contained in:
Robin Chalas 2017-03-24 09:57:35 +01:00
parent da0b520a50
commit cb1348231a
3 changed files with 19 additions and 18 deletions

View File

@ -13,6 +13,7 @@ namespace Symfony\Component\Console;
use Symfony\Component\Console\Descriptor\TextDescriptor;
use Symfony\Component\Console\Descriptor\XmlDescriptor;
use Symfony\Component\Console\Formatter\OutputFormatter;
use Symfony\Component\Console\Helper\DebugFormatterHelper;
use Symfony\Component\Console\Helper\ProcessHelper;
use Symfony\Component\Console\Helper\QuestionHelper;
@ -651,7 +652,7 @@ class Application
}
$formatter = $output->getFormatter();
$lines = array();
foreach (preg_split('/\r?\n/', $e->getMessage()) as $line) {
foreach (preg_split('/\r?\n/', OutputFormatter::escape($e->getMessage())) as $line) {
foreach ($this->splitStringByWidth($line, $width - 4) as $line) {
// pre-format lines to get the right string length
$lineLength = $this->stringWidth(preg_replace('/\[[^m]*m/', '', $formatter->format($line))) + 4;

View File

@ -1,13 +1,13 @@
[Exception]
Third exception comment
[Exception]
Third exception <fg=blue;bg=red>comment</>
[Exception]
Second exception comment
[Exception]
Second exception <comment>comment</comment>
[Exception]

View File

@ -1,17 +1,17 @@
 
 [Exception] 
 Third exception comment 
 
 
 [Exception] 
 Third exception <fg=blue;bg=red>comment</> 
 
 
 [Exception] 
 Second exception comment 
 
 
 [Exception] 
 Second exception <comment>comment</comment> 
 
 
 [Exception] 
 First exception <p>this is html</p> 
 First exception <p>this is html</p> 
 
foo3:bar