From e8bc4f975ef181c63641d8e24392642dc080ecd8 Mon Sep 17 00:00:00 2001 From: Jianghua Yang Date: Tue, 1 Apr 2025 04:26:05 +0800 Subject: [PATCH] Fix potential overflow in binary search mid calculation. --- src/backend/utils/mmgr/dsa.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/src/backend/utils/mmgr/dsa.c b/src/backend/utils/mmgr/dsa.c index 2d4639a6362..64e276bf465 100644 --- a/src/backend/utils/mmgr/dsa.c +++ b/src/backend/utils/mmgr/dsa.c @@ -783,7 +783,8 @@ dsa_allocate_extended(dsa_area *area, size_t size, int flags) while (min < max) { - uint16 mid = (min + max) / 2; + /* Avoid overflow in the middle calculation */ + uint16 mid = min + (max - min) / 2; uint16 class_size = dsa_size_classes[mid]; if (class_size < size) -- 2.25.1