From 5e5be5ced2940ae8c4201df5d033579595bf2e56 Mon Sep 17 00:00:00 2001 From: Mohamed Said Date: Fri, 23 Dec 2016 03:28:13 +0200 Subject: [PATCH] [5.4] Ability to pass output buffer to Artisan::call() (#16930) * Ability to pass outputBuffer to console commands called in code * update docblocks --- src/Illuminate/Console/Application.php | 5 +++-- src/Illuminate/Foundation/Console/Kernel.php | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/src/Illuminate/Console/Application.php b/src/Illuminate/Console/Application.php index 6ecb81c6bfd4..2443e9f428d9 100755 --- a/src/Illuminate/Console/Application.php +++ b/src/Illuminate/Console/Application.php @@ -117,13 +117,14 @@ protected function bootstrap() * * @param string $command * @param array $parameters + * @param \Symfony\Component\Console\Output\OutputInterface $outputBuffer * @return int */ - public function call($command, array $parameters = []) + public function call($command, array $parameters = [], $outputBuffer = null) { $parameters = collect($parameters)->prepend($command); - $this->lastOutput = new BufferedOutput; + $this->lastOutput = $outputBuffer ?: new BufferedOutput; $this->setCatchExceptions(false); diff --git a/src/Illuminate/Foundation/Console/Kernel.php b/src/Illuminate/Foundation/Console/Kernel.php index 4c856063c5f0..9a1aa59c7388 100644 --- a/src/Illuminate/Foundation/Console/Kernel.php +++ b/src/Illuminate/Foundation/Console/Kernel.php @@ -203,9 +203,10 @@ public function registerCommand($command) * * @param string $command * @param array $parameters + * @param \Symfony\Component\Console\Output\OutputInterface $outputBuffer * @return int */ - public function call($command, array $parameters = []) + public function call($command, array $parameters = [], $outputBuffer = null) { $this->bootstrap(); @@ -215,7 +216,7 @@ public function call($command, array $parameters = []) $this->commandsLoaded = true; } - return $this->getArtisan()->call($command, $parameters); + return $this->getArtisan()->call($command, $parameters, $outputBuffer); } /**