https://git.reactos.org/?p=reactos.git;a=commitdiff;h=ffea5152e607512f09efdb...
commit ffea5152e607512f09efdb0bd02499e481877f59 Author: George Bișoc george.bisoc@reactos.org AuthorDate: Sun Apr 25 15:56:39 2021 +0200 Commit: George Bișoc george.bisoc@reactos.org CommitDate: Sun Apr 25 15:56:39 2021 +0200
[WIN32SS][NTUSER] Fix an integer underflow within scrollbar info setting
Thanks goes to I_Kill_Bugs for the patch (and partly to Kyle Katarn for the PR) and Hermes for tweaking the patch code. Had to make a commit myself as the PR author's account is deleted.
Signed-off by: I_Kill_Bugs (original patch author) Signed-off by: Kyle Katarn contact@kcsoftwares.com Signed-off by: Hermès BÉLUSCA - MAÏTO hermes.belusca-maito@reactos.org --- win32ss/user/ntuser/scrollbar.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/win32ss/user/ntuser/scrollbar.c b/win32ss/user/ntuser/scrollbar.c index ece40873a49..75d499b25e6 100644 --- a/win32ss/user/ntuser/scrollbar.c +++ b/win32ss/user/ntuser/scrollbar.c @@ -597,7 +597,7 @@ co_IntSetScrollInfo(PWND Window, INT nBar, LPCSCROLLINFO lpsi, BOOL bRedraw) if (lpsi->fMask & (SIF_RANGE | SIF_PAGE | SIF_DISABLENOSCROLL)) { new_flags = Window->pSBInfo->WSBflags; - if (Info->nMin >= (int)(Info->nMax - max(Info->nPage - 1, 0))) + if (Info->nMin + (int)max(Info->nPage, 1) > Info->nMax) { /* Hide or disable scroll-bar */ if (lpsi->fMask & SIF_DISABLENOSCROLL)