https://bugs.kde.org/show_bug.cgi?id=511028

Nate Graham <[email protected]> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
      Latest Commit|https://invent.kde.org/plas |https://invent.kde.org/plas
                   |ma/plasma-workspace/-/commi |ma/plasma-workspace/-/commi
                   |t/d87b71f13945f249b4890e93f |t/d5d0a1568e8e58aebf670b73a
                   |520efb44b3ef17e             |22d63c37650c736

--- Comment #13 from Nate Graham <[email protected]> ---
Git commit d5d0a1568e8e58aebf670b73a22d63c37650c736 by Nate Graham.
Committed on 03/06/2026 at 17:33.
Pushed by ngraham into branch 'Plasma/6.7'.

components/calendar: Fix infinite loop when clicking during animation

Setting `currentIndex` while interacting with a `ListView` does not actually
work. The resulted in `resetViewPosition` calling `positionViewAtIndex`
continuously with a wrong index (0 or 2). Which on its turn resulted in the
`onAtYBeginningChanged` or `onAtYEndChanged` slots being called again, which
then call `resetViewPosition` again. This would then keep going until the
shell is SIGKILL-ed.

The "RangeError: Maximum call stack size exceeded" from the bug report
happened for a similar reason. Once the calendar had been dragged far enough,
it would call `handleDateChange`, which calls `handleDrag`, which then calls
`resetViewPosition`. This would also call `positionViewAtIndex` with the
wrong index and call the slots again, which keeps going until the stack
overflows.

Simply always calling `positionViewAtIndex` with index 1 prevents these loops
from happening, without changing any functionality.
FIXED-IN: 6.7.0


(cherry picked from commit d87b71f13945f249b4890e93f520efb44b3ef17e)

5f7b51cc components/calendar: Fix infinite loop when clicking during animation

Co-authored-by: Sander Wolswijk <[email protected]>

M  +1    -1    components/calendar/qml/InfiniteList.qml

https://invent.kde.org/plasma/plasma-workspace/-/commit/d5d0a1568e8e58aebf670b73a22d63c37650c736

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to