On macOS the default encoding is UTF-8. The binary encoding used by the grep matching pattern is not valid when processed as UTF-8. Switch the local to C just for the grep invocation to use the binary match pattern correctly.
Suggested-by: Bertrand Marquis <[email protected]> Signed-off-by: Roger Pau Monné <[email protected]> Reviewed-by: Bertrand Marquis <[email protected]> --- xen/tools/check-endbr.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/xen/tools/check-endbr.sh b/xen/tools/check-endbr.sh index aaaa9ebe6bd7..9346fe95c791 100755 --- a/xen/tools/check-endbr.sh +++ b/xen/tools/check-endbr.sh @@ -107,8 +107,9 @@ if $perl_re then LC_ALL=C grep -aobP '\xf3\x0f\x1e(\xfa|\xfb)|\x66\x0f\x1f\x01' $TEXT_BIN else - grep -aob -e "$(printf '\363\17\36\372')" -e "$(printf '\363\17\36\373')" \ - -e "$(printf '\146\17\37\1')" $TEXT_BIN + LC_ALL=C grep -aob -e "$(printf '\363\17\36\372')" \ + -e "$(printf '\363\17\36\373')" \ + -e "$(printf '\146\17\37\1')" $TEXT_BIN fi | $AWK -F':' '{printf "%s%07x\n", "'$vma_hi'", int('$((0x$vma_lo))') + $1}' > $ALL # Wait for $VALID to become complete -- 2.51.0
