From 02b86b055512dc740af331ae137cf5ac7efec704 Mon Sep 17 00:00:00 2001 From: Nicolas Grekas Date: Mon, 5 Oct 2015 19:08:59 +0200 Subject: [PATCH] [VarDumper] Move $prev as 1st argument in ThrowingCasterException::__construct, removing $caster --- .../Component/VarDumper/Cloner/AbstractCloner.php | 2 +- .../VarDumper/Exception/ThrowingCasterException.php | 10 +++++++--- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/src/Symfony/Component/VarDumper/Cloner/AbstractCloner.php b/src/Symfony/Component/VarDumper/Cloner/AbstractCloner.php index c4fc2e0119..1e393eccc5 100644 --- a/src/Symfony/Component/VarDumper/Cloner/AbstractCloner.php +++ b/src/Symfony/Component/VarDumper/Cloner/AbstractCloner.php @@ -292,7 +292,7 @@ abstract class AbstractCloner implements ClonerInterface $a = $cast; } } catch (\Exception $e) { - $a[(Stub::TYPE_OBJECT === $stub->type ? Caster::PREFIX_VIRTUAL : '').'⚠'] = new ThrowingCasterException($callback, $e); + $a[(Stub::TYPE_OBJECT === $stub->type ? Caster::PREFIX_VIRTUAL : '').'⚠'] = new ThrowingCasterException($e); } return $a; diff --git a/src/Symfony/Component/VarDumper/Exception/ThrowingCasterException.php b/src/Symfony/Component/VarDumper/Exception/ThrowingCasterException.php index c1b427b92e..fb4e10d9a8 100644 --- a/src/Symfony/Component/VarDumper/Exception/ThrowingCasterException.php +++ b/src/Symfony/Component/VarDumper/Exception/ThrowingCasterException.php @@ -17,11 +17,15 @@ namespace Symfony\Component\VarDumper\Exception; class ThrowingCasterException extends \Exception { /** - * @param callable $caster The failing caster - * @param \Exception $prev The exception thrown from the caster + * @param \Exception $prev The exception thrown from the caster */ - public function __construct($caster, \Exception $prev) + public function __construct($prev, \Exception $e = null) { + if (!$prev instanceof \Exception) { + @trigger_error('Providing $caster a 1st argument when instanciating a '.__CLASS__.' is deprecated since version 2.8 and will be removed in 3.0. Provide directly the $prev exception instead.', E_USER_DEPRECATED); + + $prev = $e; + } parent::__construct('Unexpected '.get_class($prev).' thrown from a caster: '.$prev->getMessage(), 0, $prev); } }