Skip to content

Commit e6f1cb4

Browse files
Improve displaying anonymous classes
1 parent 27ecd12 commit e6f1cb4

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

Application.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -776,7 +776,7 @@ protected function doRenderThrowable(\Throwable $e, OutputInterface $output): vo
776776
$message = trim($e->getMessage());
777777
if ('' === $message || OutputInterface::VERBOSITY_VERBOSE <= $output->getVerbosity()) {
778778
$class = \get_class($e);
779-
$class = 'c' === $class[0] && 0 === strpos($class, "class@anonymous\0") ? get_parent_class($class).'@anonymous' : $class;
779+
$class = 'c' === $class[0] && 0 === strpos($class, "class@anonymous\0") ? (get_parent_class($class) ?: key(class_implements($class))).'@anonymous' : $class;
780780
$title = sprintf(' [%s%s] ', $class, 0 !== ($code = $e->getCode()) ? ' ('.$code.')' : '');
781781
$len = Helper::strlen($title);
782782
} else {
@@ -785,7 +785,7 @@ protected function doRenderThrowable(\Throwable $e, OutputInterface $output): vo
785785

786786
if (false !== strpos($message, "class@anonymous\0")) {
787787
$message = preg_replace_callback('/class@anonymous\x00.*?\.php(?:0x?|:[0-9]++\$)[0-9a-fA-F]++/', function ($m) {
788-
return class_exists($m[0], false) ? get_parent_class($m[0]).'@anonymous' : $m[0];
788+
return class_exists($m[0], false) ? (get_parent_class($m[0]) ?: key(class_implements($m[0]))).'@anonymous' : $m[0];
789789
}, $message);
790790
}
791791

0 commit comments

Comments
 (0)