1
0
Fork 0

Merge pull request #6911 from johnstevenson/cygdrive

Fix shell proxy to allow user-defined cygdrive
pull/6574/merge
Jordi Boggiano 2017-12-18 13:40:56 +01:00 committed by GitHub
commit f31b820b09
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 5 additions and 12 deletions

View File

@ -194,21 +194,14 @@ class BinaryInstaller
$proxyCode = <<<PROXY
#!/usr/bin/env sh
dir=$(d=\${0%[/\\\\]*}; cd "\$d" > /dev/null; cd $binDir && pwd)
dir=\$(cd "\${0%[/\\\\]*}" > /dev/null; cd $binDir && pwd)
# See if we are running in Cygwin by checking for cygpath program
if command -v 'cygpath' >/dev/null 2>&1; then
# Cygwin paths start with /cygdrive/ which will break windows PHP,
# so we need to translate the dir path to windows format. However
# we could be using cygwin PHP which does not require this, so we
# test if the path to PHP starts with /cygdrive/ rather than /usr/bin
if [[ $(which php) == /cygdrive/* ]]; then
dir=$(cygpath -m "\$dir");
fi
if [ -d /proc/cygdrive ] && [[ \$(which php) == \$(readlink -n /proc/cygdrive)/* ]]; then
# We are in Cgywin using Windows php, so the path must be translated
dir=\$(cygpath -m "\$dir");
fi
dir=$(echo \$dir | sed 's/ /\ /g')
"\${dir}/$binFile" "$@"
"\${dir}/$binFile" "\$@"
PROXY;