From 7def8cf6e5ed644e18fab03bb573db6c60573cdc Mon Sep 17 00:00:00 2001 From: Jordi Boggiano Date: Tue, 26 Apr 2016 20:10:56 +0100 Subject: [PATCH] Refactor to use ArrayInput instead of StringInput --- src/Composer/Command/OutdatedCommand.php | 22 ++++++++++++++++------ 1 file changed, 16 insertions(+), 6 deletions(-) diff --git a/src/Composer/Command/OutdatedCommand.php b/src/Composer/Command/OutdatedCommand.php index 141e42ce1..74f3caf33 100644 --- a/src/Composer/Command/OutdatedCommand.php +++ b/src/Composer/Command/OutdatedCommand.php @@ -12,10 +12,9 @@ namespace Composer\Command; -use Composer\Util\ProcessExecutor; use Symfony\Component\Console\Input\InputInterface; use Symfony\Component\Console\Input\InputArgument; -use Symfony\Component\Console\Input\StringInput; +use Symfony\Component\Console\Input\ArrayInput; use Symfony\Component\Console\Input\InputOption; use Symfony\Component\Console\Output\OutputInterface; @@ -53,10 +52,21 @@ EOT protected function execute(InputInterface $input, OutputInterface $output) { - $args = array($input->getArgument('package') ? ProcessExecutor::escape($input->getArgument('package')) : ''); - $args[] = $input->getOption('outdated') ? ProcessExecutor::escape('--outdated') : ''; - $args[] = $input->getOption('direct') ? ProcessExecutor::escape('--direct') : ''; - $input = new StringInput('show --latest '.implode(' ', $args)); + $args = array( + 'show', + '--latest' => true, + ); + if ($input->getOption('outdated')) { + $args['--outdated'] = true; + } + if ($input->getOption('direct')) { + $args['--direct'] = true; + } + if ($input->getArgument('package')) { + $args['package'] = $input->getArgument('package'); + } + + $input = new ArrayInput($args); return $this->getApplication()->run($input, $output); }