git-prompt: use here-doc instead of here-string

Here-documend is standard, and works in all shells.

Both here-string and here-doc add final newline, which is important
in this case, because $output is without final newline, but we do
want "read" to succeed on the last line as well.

Shells which support here-string:
- bash, zsh, mksh, ksh93, yash (non-posix-mode).

shells which don't, and got fixed:
- ash-derivatives (dash, free/net bsd sh, busybox-ash).
- pdksh, openbsd sh.
- All Schily Bourne shell variants.

Signed-off-by: Avi Halachmi (:avih) <avihpit@yahoo.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
maint
Avi Halachmi (:avih) 2024-08-20 01:48:25 +00:00 committed by Junio C Hamano
parent 39bf06adf9
commit f037e607a8
1 changed files with 3 additions and 1 deletions

View File

@ -137,7 +137,9 @@ __git_ps1_show_upstream ()
upstream_type=svn+git # default upstream type is SVN if available, else git
;;
esac
done <<< "$output"
done <<-OUTPUT
$output
OUTPUT

# parse configuration values
local option