On Thu, 27 Oct 2011 11:05:30 +0200 SZEDER Gábor <szeder@xxxxxxxxxx> wrote: > On Wed, Oct 26, 2011 at 09:13:09PM +0200, Stefan Naewe wrote: > > Git for Windows comes with a bash that doesn't support process substitution. > > It issues the following error when using git-completion.bash with > > GIT_PS1_SHOWUPSTREAM set: > > > > $ export GIT_PS1_SHOWUPSTREAM=1 > > sh.exe": cannot make pipe for process substitution: Function not implemented > > sh.exe": cannot make pipe for process substitution: Function not implemented > > sh.exe": <(git config -z --get-regexp '^(svn-remote\..*\.url|bash\.showupstream)$' 2>/dev/null | tr '\0\n' '\n '): ambiguous redirect > > > > Replace the process substitution with a 'here string'. > > > > Signed-off-by: Stefan Naewe <stefan.naewe@xxxxxxxxx> > > --- > > contrib/completion/git-completion.bash | 3 ++- > > 1 files changed, 2 insertions(+), 1 deletions(-) > > > > diff --git a/contrib/completion/git-completion.bash b/contrib/completion/git-completion.bash > > index 8648a36..0b3d47e 100755 > > --- a/contrib/completion/git-completion.bash > > +++ b/contrib/completion/git-completion.bash > > @@ -110,6 +110,7 @@ __git_ps1_show_upstream () > > local upstream=git legacy="" verbose="" > > > > # get some config options from git-config > > + output="$(git config -z --get-regexp '^(svn-remote\..*\.url|bash\.showupstream)$' 2>/dev/null | tr '\0\n' '\n ')" > > while read key value; do > > case "$key" in > > bash.showupstream) > > @@ -125,7 +126,7 @@ __git_ps1_show_upstream () > > upstream=svn+git # default upstream is SVN if available, else git > > ;; > > esac > > - done < <(git config -z --get-regexp '^(svn-remote\..*\.url|bash\.showupstream)$' 2>/dev/null | tr '\0\n' '\n ') > > + done <<< "$output" > > The $output variable is not declared as local and therefore it leaks > into the environment. But instead of declaring it local, why not > eliminate it altogether, and use the "$(git config ....)" command > substitution as here string? Wouldn't this work: git config -z --get-regexp '^(svn-remote\..*\.url|bash\.showupstream)$' 2>/dev/null | tr '\0\n' '\n ' | \ while read key value; do ... done - xkr47 -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html