diff --git a/src/rss/rssarticle.cpp b/src/rss/rssarticle.cpp index 6105d1bec..920165377 100644 --- a/src/rss/rssarticle.cpp +++ b/src/rss/rssarticle.cpp @@ -31,6 +31,7 @@ #include #include #include +#include #include @@ -246,8 +247,17 @@ RssArticlePtr xmlToRssArticle(RssFeed* parent, QXmlStreamReader& xml) xml.skipCurrentElement(); } - if (guid.isEmpty()) - return RssArticlePtr(); + if (guid.isEmpty()) { + // Item does not have a guid, fall back to some other identifier + if (!link.isEmpty()) + guid = link; + else if (!title.isEmpty()) + guid = title; + else { + qWarning() << "Item has no guid, link or title, ignoring it..."; + return RssArticlePtr(); + } + } RssArticlePtr art(new RssArticle(parent, guid)); art->m_title = title;