Re: [PATCH 2/2] bisect: avoid signed integer overflow
John Keeping <john@keeping.me.uk> writes:
Show 16 quoted lines
> Signed-off-by: John Keeping <john@keeping.me.uk>
> ---
> bisect.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/bisect.c b/bisect.c
> index bd1b7b5..0d33c6f 100644
> --- a/bisect.c
> +++ b/bisect.c
> @@ -526,7 +526,7 @@ struct commit_list *filter_skipped(struct commit_list *list,
> * for this application.
> */
> static int get_prn(int count) {
> - count = count * 1103515245 + 12345;
> + count = ((unsigned) count) * 1103515245 + 12345;
> return ((unsigned)(count/65536) % PRN_MODULO);I wonder
static int get_prn(unsigned);
or even
static unsigned get_prn(unsigned);
to lose the existing cast may be a better alternative.