diff --git a/part/archivemodel.cpp b/part/archivemodel.cpp --- a/part/archivemodel.cpp +++ b/part/archivemodel.cpp @@ -842,16 +842,18 @@ void ArchiveModel::slotLoadingFinished(KJob *job) { - int i = 0; - foreach(const ArchiveEntry &entry, m_newArchiveEntries) { - newEntry(entry, DoNotNotifyViews); - i++; - } - beginResetModel(); - endResetModel(); - m_newArchiveEntries.clear(); + if (!job->error()) { + int i = 0; + foreach(const ArchiveEntry &entry, m_newArchiveEntries) { + newEntry(entry, DoNotNotifyViews); + i++; + } + beginResetModel(); + endResetModel(); + m_newArchiveEntries.clear(); - qCDebug(ARK) << "Added" << i << "entries to model"; + qCDebug(ARK) << "Added" << i << "entries to model"; + } emit loadingFinished(job); }