diff -Nurd git-2.34.0.orig/Makefile git-2.34.0/Makefile --- git-2.34.0.orig/Makefile 2021-11-15 02:28:57.000000000 -0500 +++ git-2.34.0/Makefile 2022-01-22 21:19:40.000000000 -0500 @@ -1207,7 +1207,7 @@ CFLAGS = -g -O2 -Wall LDFLAGS = CC_LD_DYNPATH = -Wl,-rpath, -BASIC_CFLAGS = -I. +BASIC_CFLAGS = BASIC_LDFLAGS = # library flags @@ -1249,7 +1249,7 @@ ALL_COMMANDS_TO_INSTALL += git-upload-pack$(X) endif -ALL_CFLAGS = $(DEVELOPER_CFLAGS) $(CPPFLAGS) $(CFLAGS) +ALL_CFLAGS = -I. $(DEVELOPER_CFLAGS) $(CPPFLAGS) $(CFLAGS) ALL_LDFLAGS = $(LDFLAGS) comma := , diff -Nurd git-2.34.0.orig/contrib/completion/git-completion.bash git-2.34.0/contrib/completion/git-completion.bash --- git-2.34.0.orig/contrib/completion/git-completion.bash 2021-11-15 02:28:57.000000000 -0500 +++ git-2.34.0/contrib/completion/git-completion.bash 2022-01-22 21:18:41.000000000 -0500 @@ -54,6 +54,9 @@ # When set to "1" suggest all options, including options which are # typically hidden (e.g. '--allow-empty' for 'git commit'). +# Make sure we're not in posix mode, otherwise process substitution is invalid. +set +o posix + case "$COMP_WORDBREAKS" in *:*) : great ;; *) COMP_WORDBREAKS="$COMP_WORDBREAKS:" diff -Nurd git-2.34.0.orig/grep.c git-2.34.0/grep.c --- git-2.34.0.orig/grep.c 2021-11-15 02:28:57.000000000 -0500 +++ git-2.34.0/grep.c 2022-01-23 07:36:32.000000000 -0500 @@ -362,6 +362,7 @@ int jitret; int patinforet; size_t jitsizearg; + int literal = !opt->ignore_case && (p->fixed || p->is_fixed); /* * Call pcre2_general_context_create() before calling any @@ -382,10 +383,7 @@ } options |= PCRE2_CASELESS; } - if ((!opt->ignore_locale && !has_non_ascii(p->pattern)) || - (!opt->ignore_locale && is_utf8_locale() && - has_non_ascii(p->pattern) && !(!opt->ignore_case && - (p->fixed || p->is_fixed)))) + if (!opt->ignore_locale && is_utf8_locale() && !literal) options |= (PCRE2_UTF | PCRE2_MATCH_INVALID_UTF); #ifdef GIT_PCRE2_VERSION_10_36_OR_HIGHER