bug #17040 [Console] Avoid extra blank lines when rendering exceptions (ogizanagi)

This PR was merged into the 2.3 branch.

Discussion
----------

[Console] Avoid extra blank lines when rendering exceptions

| Q             | A
| ------------- | ---
| Bug fix?      | yes
| New feature?  | no
| BC breaks?    | no
| Deprecations? | no
| Tests pass?   | yes
| Fixed tickets | -
| License       | MIT
| Doc PR        | -

Don't know if it can be considered as a bug fix as it is the behavior since a while (https://github.com/symfony/symfony/pull/9055), but I let you see by yourself the old vs new rendering:

![Console exception rendering](https://cloud.githubusercontent.com/assets/2211145/11857447/92cebfbe-a458-11e5-9d3d-6147b0338080.PNG)

Commits
-------

2e158df [Console] Avoid extra blank lines when rendering exceptions
This commit is contained in:
Fabien Potencier 2015-12-18 17:54:05 +01:00
commit f371445eff
9 changed files with 3 additions and 38 deletions

View File

@ -673,6 +673,8 @@ class Application
*/
public function renderException($e, $output)
{
$output->writeln('');
do {
$title = sprintf(' [%s] ', get_class($e));
@ -695,7 +697,7 @@ class Application
}
}
$messages = array('', '');
$messages = array();
$messages[] = $emptyLine = $formatter->format(sprintf('<error>%s</error>', str_repeat(' ', $len)));
$messages[] = $formatter->format(sprintf('<error>%s%s</error>', $title, str_repeat(' ', max(0, $len - $this->stringWidth($title)))));
foreach ($lines as $line) {
@ -703,7 +705,6 @@ class Application
}
$messages[] = $emptyLine;
$messages[] = '';
$messages[] = '';
$output->writeln($messages, OutputInterface::OUTPUT_RAW);
@ -730,14 +731,12 @@ class Application
}
$output->writeln('');
$output->writeln('');
}
} while ($e = $e->getPrevious());
if (null !== $this->runningCommand) {
$output->writeln(sprintf('<info>%s</info>', sprintf($this->runningCommand->getSynopsis(), $this->getName())));
$output->writeln('');
$output->writeln('');
}
}

View File

@ -1,8 +1,6 @@
[InvalidArgumentException]
Command "foo" is not defined.

View File

@ -1,11 +1,8 @@
[InvalidArgumentException]
The "--foo" option does not exist.
list [--xml] [--raw] [--format="..."] [namespace]

View File

@ -1,27 +1,18 @@
[Exception]
Third exception comment
[Exception]
Second exception comment
[Exception]
First exception <p>this is html</p>
foo3:bar

View File

@ -1,27 +1,18 @@
 
 [Exception] 
 Third exception comment 
 
 
 [Exception] 
 Second exception comment 
 
 
 [Exception] 
 First exception <p>this is html</p> 
 
foo3:bar

View File

@ -1,9 +1,7 @@
[InvalidArgumentException]
Command "foo" is not define
d.

View File

@ -1,11 +1,8 @@
[Exception]
エラーメッセージ
foo

View File

@ -1,11 +1,8 @@
 
 [Exception] 
 エラーメッセージ 
 
foo

View File

@ -1,12 +1,9 @@
[Exception]
コマンドの実行中にエラーが
発生しました。
foo