fix path info

main
nishiyama 8 years ago
parent 0a8528c5c7
commit 8b221905ca

@ -145,13 +145,18 @@ class EventDispatcher
*/
protected function doDispatch(Event $event)
{
$pathStr = 'PATH';
if (!isset($_SERVER[$pathStr])) {
$pathStr = 'Path';
}
// add the bin dir to the PATH to make local binaries of deps usable in scripts
$binDir = $this->composer->getConfig()->get('bin-dir');
if (is_dir($binDir)) {
$binDir = realpath($binDir);
if (isset($_SERVER['PATH']) && !preg_match('{(^|'.PATH_SEPARATOR.')'.preg_quote($binDir).'($|'.PATH_SEPARATOR.')}', $_SERVER['PATH'])) {
$_SERVER['PATH'] = $binDir.PATH_SEPARATOR.getenv('PATH');
putenv('PATH='.$_SERVER['PATH']);
if (isset($_SERVER[$pathStr]) && !preg_match('{(^|'.PATH_SEPARATOR.')'.preg_quote($binDir).'($|'.PATH_SEPARATOR.')}', $_SERVER[$pathStr])) {
$_SERVER[$pathStr] = $binDir.PATH_SEPARATOR.getenv($pathStr);
putenv($pathStr.'='.$_SERVER[$pathStr]);
}
}

Loading…
Cancel
Save