浏览代码

Fix ComposerRepository ctor

Jordi Boggiano 13 年之前
父节点
当前提交
2e8762744f
共有 1 个文件被更改,包括 8 次插入5 次删除
  1. 8 5
      src/Composer/Repository/ComposerRepository.php

+ 8 - 5
src/Composer/Repository/ComposerRepository.php

@@ -24,14 +24,17 @@ class ComposerRepository extends ArrayRepository
     protected $url;
     protected $packages;
 
-    public function __construct($url)
+    public function __construct(array $config)
     {
-        $url = rtrim($url, '/');
-        if (!filter_var($url, FILTER_VALIDATE_URL)) {
-            throw new \UnexpectedValueException('Invalid url given for Composer repository: '.$url);
+        if (!preg_match('{^https?://}', $config['url'])) {
+            $config['url'] = 'http://'.$config['url'];
+        }
+        $config['url'] = rtrim($config['url'], '/');
+        if (!filter_var($config['url'], FILTER_VALIDATE_URL)) {
+            throw new \UnexpectedValueException('Invalid url given for Composer repository: '.$config['url']);
         }
 
-        $this->url = $url;
+        $this->url = $config['url'];
     }
 
     protected function initialize()