davidre created this revision. davidre added a reviewer: Plasma. Herald added a project: Plasma. Herald added a subscriber: plasma-devel. davidre requested review of this revision.
REVISION SUMMARY QSortFilterProxyModel uses std::stable_sort internally which requires that the comparison function generates a strict weak ordering. Returning true or false randomly didn't fullfil this requirement causing a crash in some calls to invalidate. To keep the random order consistent a vector of row indices is used which records the current random order. BUG: 413018 FIXED-IN: 5.17.1 TEST PLAN To reproduce the bug use a slideshow in random order with few pictures and a small time intervall. REPOSITORY R120 Plasma Workspace BRANCH Plasma/5.17 REVISION DETAIL https://phabricator.kde.org/D24723 AFFECTED FILES wallpapers/image/slidefiltermodel.cpp wallpapers/image/slidefiltermodel.h To: davidre, #plasma Cc: plasma-devel, LeGast00n, The-Feren-OS-Dev, jraleigh, fbampaloukas, GB_2, ragreen, ZrenBot, ngraham, alexeymin, himcesjf, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, ahiemstra, mart