Skip to content

Commit dd94b38

Browse files
Fix displaying anonymous classes on PHP >= 7.4.2
1 parent a1eb0d3 commit dd94b38

File tree

4 files changed

+4
-4
lines changed

4 files changed

+4
-4
lines changed

src/Symfony/Component/Console/Application.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -796,7 +796,7 @@ protected function doRenderException(\Exception $e, OutputInterface $output)
796796
}
797797

798798
if (false !== strpos($message, "class@anonymous\0")) {
799-
$message = preg_replace_callback('/class@anonymous\x00.*?\.php(?:0x?|:)[0-9a-fA-F]++/', function ($m) {
799+
$message = preg_replace_callback('/class@anonymous\x00.*?\.php(?:0x?|:[0-9]++\$)[0-9a-fA-F]++/', function ($m) {
800800
return class_exists($m[0], false) ? get_parent_class($m[0]).'@anonymous' : $m[0];
801801
}, $message);
802802
}

src/Symfony/Component/Debug/Exception/FlattenException.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -172,7 +172,7 @@ public function getMessage()
172172
public function setMessage($message)
173173
{
174174
if (false !== strpos($message, "class@anonymous\0")) {
175-
$message = preg_replace_callback('/class@anonymous\x00.*?\.php(?:0x?|:)[0-9a-fA-F]++/', function ($m) {
175+
$message = preg_replace_callback('/class@anonymous\x00.*?\.php(?:0x?|:[0-9]++\$)[0-9a-fA-F]++/', function ($m) {
176176
return class_exists($m[0], false) ? get_parent_class($m[0]).'@anonymous' : $m[0];
177177
}, $message);
178178
}

src/Symfony/Component/VarDumper/Caster/ClassStub.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ public function __construct(string $identifier, $callable = null)
5656
}
5757

5858
if (false !== strpos($identifier, "class@anonymous\0")) {
59-
$this->value = $identifier = preg_replace_callback('/class@anonymous\x00.*?\.php(?:0x?|:)[0-9a-fA-F]++/', function ($m) {
59+
$this->value = $identifier = preg_replace_callback('/class@anonymous\x00.*?\.php(?:0x?|:[0-9]++\$)[0-9a-fA-F]++/', function ($m) {
6060
return class_exists($m[0], false) ? get_parent_class($m[0]).'@anonymous' : $m[0];
6161
}, $identifier);
6262
}

src/Symfony/Component/VarDumper/Caster/ExceptionCaster.php

+1-1
Original file line numberDiff line numberDiff line change
@@ -282,7 +282,7 @@ private static function filterExceptionArray($xClass, array $a, $xPrefix, $filte
282282
unset($a[$xPrefix.'string'], $a[Caster::PREFIX_DYNAMIC.'xdebug_message'], $a[Caster::PREFIX_DYNAMIC.'__destructorException']);
283283

284284
if (isset($a[Caster::PREFIX_PROTECTED.'message']) && false !== strpos($a[Caster::PREFIX_PROTECTED.'message'], "class@anonymous\0")) {
285-
$a[Caster::PREFIX_PROTECTED.'message'] = preg_replace_callback('/class@anonymous\x00.*?\.php(?:0x?|:)[0-9a-fA-F]++/', function ($m) {
285+
$a[Caster::PREFIX_PROTECTED.'message'] = preg_replace_callback('/class@anonymous\x00.*?\.php(?:0x?|:[0-9]++\$)[0-9a-fA-F]++/', function ($m) {
286286
return class_exists($m[0], false) ? get_parent_class($m[0]).'@anonymous' : $m[0];
287287
}, $a[Caster::PREFIX_PROTECTED.'message']);
288288
}

0 commit comments

Comments
 (0)