diff --git a/libdiscover/backends/KNSBackend/KNSResource.cpp b/libdiscover/backends/KNSBackend/KNSResource.cpp --- a/libdiscover/backends/KNSBackend/KNSResource.cpp +++ b/libdiscover/backends/KNSBackend/KNSResource.cpp @@ -175,14 +175,32 @@ void KNSResource::fetchScreenshots() { QList preview; + QUrl tempUrl; + appendIfValid(preview, QUrl(m_entry.previewUrl(KNSCore::EntryInternal::PreviewSmall1))); - appendIfValid(preview, QUrl(m_entry.previewUrl(KNSCore::EntryInternal::PreviewSmall2))); - appendIfValid(preview, QUrl(m_entry.previewUrl(KNSCore::EntryInternal::PreviewSmall3))); + + tempUrl = QUrl(m_entry.previewUrl(KNSCore::EntryInternal::PreviewSmall2)); + if (!preview.contains(tempUrl)) { + appendIfValid(preview, tempUrl); + } + + tempUrl = QUrl(m_entry.previewUrl(KNSCore::EntryInternal::PreviewSmall3)); + if (!preview.contains(tempUrl)) { + appendIfValid(preview, tempUrl); + } QList screenshots; appendIfValid(screenshots, QUrl(m_entry.previewUrl(KNSCore::EntryInternal::PreviewBig1)), QUrl(m_entry.previewUrl(KNSCore::EntryInternal::PreviewSmall1))); - appendIfValid(screenshots, QUrl(m_entry.previewUrl(KNSCore::EntryInternal::PreviewBig2)), QUrl(m_entry.previewUrl(KNSCore::EntryInternal::PreviewSmall2))); - appendIfValid(screenshots, QUrl(m_entry.previewUrl(KNSCore::EntryInternal::PreviewBig3)), QUrl(m_entry.previewUrl(KNSCore::EntryInternal::PreviewSmall3))); + + tempUrl = QUrl(m_entry.previewUrl(KNSCore::EntryInternal::PreviewBig2)); + if (!screenshots.contains(tempUrl)) { + appendIfValid(screenshots, tempUrl); + } + + tempUrl = QUrl(m_entry.previewUrl(KNSCore::EntryInternal::PreviewBig3)); + if (!screenshots.contains(tempUrl)) { + appendIfValid(screenshots, tempUrl); + } emit screenshotsFetched(preview, screenshots); }