ソースを参照

Fix process timeout when set to 0

Fabien Potencier 8 年 前
コミット
2c77fd6801
2 ファイル変更9 行追加1 行削除
  1. 2 1
      src/Composer/Config.php
  2. 7 0
      tests/Composer/Test/ConfigTest.php

+ 2 - 1
src/Composer/Config.php

@@ -211,7 +211,8 @@ class Config
                 // convert foo-bar to COMPOSER_FOO_BAR and check if it exists since it overrides the local config
                 $env = 'COMPOSER_' . strtoupper(strtr($key, '-', '_'));
 
-                $val = rtrim($this->process($this->getComposerEnv($env) ?: $this->config[$key], $flags), '/\\');
+                $val = $this->getComposerEnv($env);
+                $val = rtrim($this->process(false !== $val ? $val : $this->config[$key], $flags), '/\\');
                 $val = Platform::expandPath($val);
 
                 if (substr($key, -4) !== '-dir') {

+ 7 - 0
tests/Composer/Test/ConfigTest.php

@@ -291,4 +291,11 @@ class ConfigTest extends \PHPUnit_Framework_TestCase
         );
         $this->assertTrue($config->get('disable-tls'));
     }
+
+    public function testProcessTimeout()
+    {
+        putenv('COMPOSER_PROCESS_TIMEOUT=0');
+        $config = new Config(true);
+        $this->assertEquals(0, $config->get('process-timeout'));
+    }
 }