From 77db91ae8cb861c09b3aa5017f8561bed2df3473 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 d9382c725..c7fe60787 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; }