use the same bound check as setCurrentItem when setting m_currentItem manually

Summary:
This patch basically adds the check that would normally be done to the
itemInserted method, which seems to be good idea in general.
However, the fact that this is needed there might be an indicator of a logic bug
in the function – though, as I'm not familiar with the code base I cannot judge
this.

Test Plan:
Without this patch, dolphin when started from a terminal prints the following
warning (number can be different):
qt.accessibility.core: Cannot create accessible child interface for object:  PlacesView(0x563e863e35c0)  index:  10
After applying the patch, the warning doesn't appear anymore. Dolphin still
works still as it did before.

Reviewers: elvisangelaccio, #dolphin

Reviewed By: elvisangelaccio

Subscribers: #dolphin

Differential Revision: https://phabricator.kde.org/D11990
This commit is contained in:
Fabian Kosmale 2018-04-06 17:57:38 +02:00
parent 5413025f0b
commit 3a028d9db0

View file

@ -235,6 +235,9 @@ void KItemListSelectionManager::itemsInserted(const KItemRangeList& itemRanges)
// Calling setCurrentItem would trigger the selectionChanged signal, but we want to
// emit it only once in this function -> change the current item manually and emit currentChanged
m_currentItem += inc;
if (m_currentItem >= m_model->count()) {
m_currentItem = -1;
}
emit currentChanged(m_currentItem, previousCurrent);
}