1
0
Fork 0

Merge pull request #4419 from sroze/real-system-path

Uses `realpath` to fix relative path issues
pull/4421/head
Jordi Boggiano 2015-09-14 15:40:16 +01:00
commit fbf61ae671
1 changed files with 5 additions and 4 deletions

View File

@ -39,18 +39,19 @@ class PathDownloader extends FileDownloader
)); ));
$url = $package->getDistUrl(); $url = $package->getDistUrl();
if (!file_exists($url) || !is_dir($url)) { $realUrl = realpath($url);
if (false === $realUrl || !file_exists($realUrl) || !is_dir($realUrl)) {
throw new \RuntimeException(sprintf( throw new \RuntimeException(sprintf(
'Path "%s" is not found', 'Path "%s" is not found',
$path $url
)); ));
} }
try { try {
$fileSystem->symlink($url, $path); $fileSystem->symlink($realUrl, $path);
$this->io->writeError(sprintf(' Symlinked from %s', $url)); $this->io->writeError(sprintf(' Symlinked from %s', $url));
} catch (IOException $e) { } catch (IOException $e) {
$fileSystem->mirror($url, $path); $fileSystem->mirror($realUrl, $path);
$this->io->writeError(sprintf(' Mirrored from %s', $url)); $this->io->writeError(sprintf(' Mirrored from %s', $url));
} }