From e672d0c98a6083adaded6c8dad41445fcf8d38c7 Mon Sep 17 00:00:00 2001 From: Anton Alkin Date: Thu, 13 Feb 2025 12:29:13 +0100 Subject: [PATCH] DPL Analysis: fix corner case in index builder algorithm --- Framework/Core/src/IndexBuilderHelpers.cxx | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/Framework/Core/src/IndexBuilderHelpers.cxx b/Framework/Core/src/IndexBuilderHelpers.cxx index 05aedca9d92d4..52d6080690fe1 100644 --- a/Framework/Core/src/IndexBuilderHelpers.cxx +++ b/Framework/Core/src/IndexBuilderHelpers.cxx @@ -159,6 +159,10 @@ bool IndexColumnBuilder::findSingle(int idx) } } + if (mPosition < mSourceSize && valueAt(mPosition) < idx) { + ++mPosition; + } + return (mPosition < mSourceSize && valueAt(mPosition) == idx); } @@ -176,6 +180,10 @@ bool IndexColumnBuilder::findSlice(int idx) } } + if (mValuePos < mValuesArrow->length() && mValuesArrow->Value(mValuePos) <= idx) { + ++mPosition; + } + return (mValuePos < mValuesArrow->length() && mValuesArrow->Value(mValuePos) == idx); }