From 7c38a0373aa58f2544be91ebf29dc141d5c09dce Mon Sep 17 00:00:00 2001 From: ghiscoding Date: Tue, 28 Jul 2026 21:58:39 -0400 Subject: [PATCH] fix: align frozen-band cell-cleanup ranges with the (inclusive) render ranges --- packages/common/src/core/slickGrid.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/packages/common/src/core/slickGrid.ts b/packages/common/src/core/slickGrid.ts index 46c31047d..b9847388c 100755 --- a/packages/common/src/core/slickGrid.ts +++ b/packages/common/src/core/slickGrid.ts @@ -5692,12 +5692,15 @@ export class SlickGrid = Column, O e if (this.hasFrozenRows) { const renderedFrozenRows = extend(true, {}, rendered); + // same INCLUSIVE bounds as the frozen renderRows ranges below — the previous + // dataLength / frozenRow bounds overshot by one, double-processing the first + // scrollable row (top mode) in both the frozen and the main pass if (this._options.frozenBottom) { renderedFrozenRows.top = this.actualFrozenRow; - renderedFrozenRows.bottom = this.getDataLength(); + renderedFrozenRows.bottom = this.getDataLength() - 1; } else { renderedFrozenRows.top = 0; - renderedFrozenRows.bottom = this._options.frozenRow; + renderedFrozenRows.bottom = this._options.frozenRow! - 1; } this.cleanUpAndRenderCells(renderedFrozenRows); }