In preparation for subsequent patches that make todo_* free-running instead of reducing them mod TODO_SIZE, change their type to unsigned to avoid undefined behaviour in case anybody ever greps more than 2 billion files. Signed-off-by: Rasmus Villemoes <rv@xxxxxxxxxxxxxxxxxx> --- builtin/grep.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/builtin/grep.c b/builtin/grep.c index 580fd38f41..6c1e90d43b 100644 --- a/builtin/grep.c +++ b/builtin/grep.c @@ -58,9 +58,9 @@ struct work_item { */ #define TODO_SIZE 128 static struct work_item todo[TODO_SIZE]; -static int todo_start; -static int todo_end; -static int todo_done; +static unsigned int todo_start; +static unsigned int todo_end; +static unsigned int todo_done; /* Has all work items been added? */ static int all_work_added; @@ -132,7 +132,7 @@ static struct work_item *get_work(void) static void work_done(struct work_item *w) { - int old_done; + unsigned int old_done; grep_lock(); w->done = 1; -- 2.20.1