diff --git a/src/views/versioncontrol/updateitemstatesthread.cpp b/src/views/versioncontrol/updateitemstatesthread.cpp index 7b806a5926..4f0122e0f1 100644 --- a/src/views/versioncontrol/updateitemstatesthread.cpp +++ b/src/views/versioncontrol/updateitemstatesthread.cpp @@ -57,12 +57,15 @@ void UpdateItemStatesThread::run() KVersionControlPlugin2* pluginV2 = qobject_cast(m_plugin); if (pluginV2) { for (int i = 0; i < count; ++i) { - items[i].version = pluginV2->itemVersion(items[i].item); + const KFileItem& item = items.at(i).first; + const KVersionControlPlugin2::ItemVersion version = pluginV2->itemVersion(item); + items[i].second = version; } } else { for (int i = 0; i < count; ++i) { - const KVersionControlPlugin::VersionState state = m_plugin->versionState(items[i].item); - items[i].version = static_cast(state); + const KFileItem& item = items.at(i).first; + const KVersionControlPlugin::VersionState state = m_plugin->versionState(item); + items[i].second = static_cast(state); } } } diff --git a/src/views/versioncontrol/versioncontrolobserver.cpp b/src/views/versioncontrol/versioncontrolobserver.cpp index c41803c161..c7677de53d 100644 --- a/src/views/versioncontrol/versioncontrolobserver.cpp +++ b/src/views/versioncontrol/versioncontrolobserver.cpp @@ -205,9 +205,11 @@ void VersionControlObserver::slotThreadFinished() const QVector& items = it.value(); foreach (const ItemState& item, items) { + const KFileItem& fileItem = item.first; + const KVersionControlPlugin2::ItemVersion version = item.second; QHash values; - values.insert("version", QVariant(item.version)); - m_model->setData(m_model->index(item.item), values); + values.insert("version", QVariant(version)); + m_model->setData(m_model->index(fileItem), values); } } @@ -266,8 +268,8 @@ int VersionControlObserver::createItemStatesList(QMapfileItem(index); - itemState.version = KVersionControlPlugin2::UnversionedVersion; + itemState.first = m_model->fileItem(index); + itemState.second = KVersionControlPlugin2::UnversionedVersion; items.append(itemState); } else if (expansionLevel > currentExpansionLevel) { @@ -279,7 +281,7 @@ int VersionControlObserver::createItemStatesList(QMap 0) { - const KUrl& url = items.first().item.url(); + const KUrl& url = items.first().first.url(); itemStates.insert(url.directory(KUrl::AppendTrailingSlash), items); } diff --git a/src/views/versioncontrol/versioncontrolobserver.h b/src/views/versioncontrol/versioncontrolobserver.h index 2c07b0614f..562a599d25 100644 --- a/src/views/versioncontrol/versioncontrolobserver.h +++ b/src/views/versioncontrol/versioncontrolobserver.h @@ -101,11 +101,7 @@ private slots: void slotThreadFinished(); private: - struct ItemState - { - KFileItem item; - KVersionControlPlugin2::ItemVersion version; - }; + typedef QPair ItemState; void updateItemStates();