grep: cast printf %.*s "precision" argument explicitly to int
On some systems, regoff_t that is the type of rm_so/rm_eo members are wider than int; %.*s precision specifier expects an int, so use an explicit cast. A breakage reported on Darwin by Brian Gernhardt should be fixed with this patch. Signed-off-by: Junio C Hamano <gitster@pobox.com>
This commit is contained in:
4
grep.c
4
grep.c
@ -490,9 +490,9 @@ static void show_line(struct grep_opt *opt, char *bol, char *eol,
|
|||||||
*eol = '\0';
|
*eol = '\0';
|
||||||
while (next_match(opt, bol, eol, ctx, &match, eflags)) {
|
while (next_match(opt, bol, eol, ctx, &match, eflags)) {
|
||||||
printf("%.*s%s%.*s%s",
|
printf("%.*s%s%.*s%s",
|
||||||
match.rm_so, bol,
|
(int)match.rm_so, bol,
|
||||||
opt->color_match,
|
opt->color_match,
|
||||||
match.rm_eo - match.rm_so, bol + match.rm_so,
|
(int)(match.rm_eo - match.rm_so), bol + match.rm_so,
|
||||||
GIT_COLOR_RESET);
|
GIT_COLOR_RESET);
|
||||||
bol += match.rm_eo;
|
bol += match.rm_eo;
|
||||||
rest -= match.rm_eo;
|
rest -= match.rm_eo;
|
||||||
|
Reference in New Issue
Block a user