diff --git a/src/PHPCensor/Plugin/Util/Executor.php b/src/PHPCensor/Plugin/Util/Executor.php index 5f430390..215842a2 100644 --- a/src/PHPCensor/Plugin/Util/Executor.php +++ b/src/PHPCensor/Plugin/Util/Executor.php @@ -193,7 +193,7 @@ class Executor try { // Build and run it - $obj = $this->pluginFactory->buildPlugin($class, $options); + $obj = $this->pluginFactory->buildPlugin($class, (is_null($options) ? [] : $options)); return $obj->execute(); } catch (\Exception $ex) { diff --git a/src/PHPCensor/Plugin/Util/Factory.php b/src/PHPCensor/Plugin/Util/Factory.php index 7be3b0f2..ea55b1f8 100644 --- a/src/PHPCensor/Plugin/Util/Factory.php +++ b/src/PHPCensor/Plugin/Util/Factory.php @@ -2,6 +2,7 @@ namespace PHPCensor\Plugin\Util; +use PHPCensor\Plugin; use Pimple\Container; /** @@ -69,7 +70,9 @@ class Factory * * @param $className * @param array|null $options + * * @throws \InvalidArgumentException if $className doesn't represent a valid plugin + * * @return \PHPCensor\Plugin */ public function buildPlugin($className, $options = []) @@ -89,8 +92,10 @@ class Factory $argsToUse = $this->addArgFromParam($argsToUse, $param); } } + /** @var Plugin $plugin */ $plugin = $reflectedPlugin->newInstanceArgs($argsToUse); } else { + /** @var Plugin $plugin */ $plugin = $reflectedPlugin->newInstance(); }