diff --git a/src/Composer/Repository/ComposerRepository.php b/src/Composer/Repository/ComposerRepository.php index b0b3d2689..f3b0642d0 100644 --- a/src/Composer/Repository/ComposerRepository.php +++ b/src/Composer/Repository/ComposerRepository.php @@ -584,6 +584,11 @@ class ComposerRepository extends ArrayRepository $filename = $this->baseUrl.'/'.$filename; } + // url-encode $ signs in URLs as bad proxies choke on them + if ($pos = strpos($filename, '$')) { + $filename = substr($filename, 0, $pos) . '%24' . substr($filename, $pos+1); + } + $retries = 3; while ($retries--) { try {