From 0efb142c88b85e3ef307229e8ccc3292a920b742 Mon Sep 17 00:00:00 2001 From: Pierre Curto Date: Tue, 11 Jul 2023 08:08:22 +0200 Subject: [PATCH] std/lib/sort: avoid overflow in binary search Signed-off-by: Pierre Curto --- lib/std/sort/binarysearch.c3 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/std/sort/binarysearch.c3 b/lib/std/sort/binarysearch.c3 index 046b023b2..e31a24058 100644 --- a/lib/std/sort/binarysearch.c3 +++ b/lib/std/sort/binarysearch.c3 @@ -12,7 +12,7 @@ macro usz binarysearch_with(list, x, cmp) usz len = @len_from_list(list); for (usz j = len; i < j;) { - usz half = (i + j) / 2; + usz half = i + (j - i) / 2; $if $checks(cmp(list[0], list[0])): int res = cmp(list[half], x); $else