From 31cd0ff07d5a317eb8f3f729b97d168fe507e1bc Mon Sep 17 00:00:00 2001 From: Mark Story Date: Wed, 29 Oct 2014 21:08:04 -0400 Subject: [PATCH] Use chdir() instead of calling multiple commands. This improves compatibility with windows, and continues to work on *nix systems. Refs #5011 --- src/Shell/Task/PluginTask.php | 4 ++-- tests/TestCase/Shell/Task/PluginTaskTest.php | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Shell/Task/PluginTask.php b/src/Shell/Task/PluginTask.php index b739b67972e..f2db30e31f8 100644 --- a/src/Shell/Task/PluginTask.php +++ b/src/Shell/Task/PluginTask.php @@ -264,8 +264,8 @@ protected function _modifyAutoloader($plugin, $path) { } try { - $command = 'cd ' . escapeshellarg($path) . '; '; - $command .= 'php ' . escapeshellarg($composer) . ' dump-autoload'; + chdir($path); + $command = 'php ' . escapeshellarg($composer) . ' dump-autoload'; $this->callProcess($command); } catch (\RuntimeException $e) { $error = $e->getMessage(); diff --git a/tests/TestCase/Shell/Task/PluginTaskTest.php b/tests/TestCase/Shell/Task/PluginTaskTest.php index b3c9df56d58..011b7ebd633 100644 --- a/tests/TestCase/Shell/Task/PluginTaskTest.php +++ b/tests/TestCase/Shell/Task/PluginTaskTest.php @@ -200,7 +200,7 @@ public function testExecuteUpdateComposer() { $this->Task->expects($this->at(3)) ->method('callProcess') - ->with('cd ' . escapeshellarg($path) . '; php ' . escapeshellarg('composer.phar') . ' dump-autoload'); + ->with('php ' . escapeshellarg('composer.phar') . ' dump-autoload'); $this->Task->main('BakeTestPlugin');