From 6ebafcf1073d5d0fd89e668ae2588f4d525ea403 Mon Sep 17 00:00:00 2001 From: Yujon Pradhananga <139200034+Yujonpradhananga@users.noreply.github.com> Date: Mon, 2 Mar 2026 00:04:02 +0545 Subject: [PATCH] layout/scrolling: fix size_t underflow in idxForHeight (#13465) --- src/layout/algorithm/tiled/scrolling/ScrollingAlgorithm.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/layout/algorithm/tiled/scrolling/ScrollingAlgorithm.cpp b/src/layout/algorithm/tiled/scrolling/ScrollingAlgorithm.cpp index d9382c72..c7fe6078 100644 --- a/src/layout/algorithm/tiled/scrolling/ScrollingAlgorithm.cpp +++ b/src/layout/algorithm/tiled/scrolling/ScrollingAlgorithm.cpp @@ -190,10 +190,12 @@ size_t SColumnData::idx(SP t) { } size_t SColumnData::idxForHeight(float y) { + if (targetDatas.empty()) + return 0; for (size_t i = 0; i < targetDatas.size(); ++i) { if (targetDatas[i]->target->position().y < y) continue; - return i - 1; + return i == 0 ? 0 : i - 1; } return targetDatas.size() - 1; }