On Wed, Aug 21, 2013 at 2:47 PM, Junio C Hamano <gits...@pobox.com> wrote: > Brandon Casey <bca...@nvidia.com> writes: > >> From: Brandon Casey <draf...@gmail.com> >> >> This reverts commit 69a8141a5d81925b7e08cb228535e9ea4a7a02e3. >> >> Old Bash (3.0) which is distributed with RHEL 4.X and other ancient >> platforms that are still in wide use, does not have a printf that >> supports -v. Let's revert this patch and go back to using printf >> in the traditional way. >> >> Signed-off-by: Brandon Casey <draf...@gmail.com> >> --- > > Is this something you can detect at load-time once, store the result > in a private variable and then switch on it at runtime, something > along the lines of... > > > # on load... > printf -v __git_printf_supports_v -- "%s" yes >/dev/null 2>&1 > > ... > > if test "${__git_printf_supports_v}" = yes > then > printf -v gitstring -- "$printf_format" "$gitstring" > else > gitstring=$(printf -- "$printf_format" "$gitstring") > fi
Yes, that appears to work. -Brandon >> contrib/completion/git-prompt.sh | 6 +----- >> 1 file changed, 1 insertion(+), 5 deletions(-) >> >> diff --git a/contrib/completion/git-prompt.sh >> b/contrib/completion/git-prompt.sh >> index a81ef5a..7698ec4 100644 >> --- a/contrib/completion/git-prompt.sh >> +++ b/contrib/completion/git-prompt.sh >> @@ -433,11 +433,7 @@ __git_ps1 () >> local gitstring="$c${b##refs/heads/}${f:+$z$f}$r$p" >> >> if [ $pcmode = yes ]; then >> - if [[ -n ${ZSH_VERSION-} ]]; then >> - gitstring=$(printf -- "$printf_format" "$gitstring") >> - else >> - printf -v gitstring -- "$printf_format" "$gitstring" >> - fi >> + gitstring=$(printf -- "$printf_format" "$gitstring") >> PS1="$ps1pc_start$gitstring$ps1pc_end" >> else >> printf -- "$printf_format" "$gitstring" -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html