diff --git a/src/Composer/Util/AuthHelper.php b/src/Composer/Util/AuthHelper.php index 64ccf60f71b7..f49373397913 100644 --- a/src/Composer/Util/AuthHelper.php +++ b/src/Composer/Util/AuthHelper.php @@ -105,7 +105,8 @@ public function promptAuthIfNeeded($url, $origin, $statusCode, $reason = null, $ throw new TransportException('Could not authenticate against ' . $origin, 403); } $this->io->ask('After authorizing your token, confirm that you would like to retry the request'); - return ['retry' => TRUE, 'storeAuth' => $storeAuth]; + + return array('retry' => true, 'storeAuth' => $storeAuth); } if ($rateLimited) { diff --git a/src/Composer/Util/GitHub.php b/src/Composer/Util/GitHub.php index 49db10a360d0..2dd53e3506c6 100644 --- a/src/Composer/Util/GitHub.php +++ b/src/Composer/Util/GitHub.php @@ -182,11 +182,12 @@ public function getSsoUrl(array $headers) { foreach ($headers as $header) { $header = trim($header); - if (false === strpos($header, 'x-github-sso: required')) { + if (false === stripos($header, 'x-github-sso: required')) { continue; } - list(, $url) = explode('=', $header, 2); - return $url; + if (Preg::isMatch('{\burl=(?P[^\s;]+)}', $header, $match)) { + return $match['url']; + } } return null;