aboutsummaryrefslogtreecommitdiff
path: root/launcher/news
diff options
context:
space:
mode:
authorTrial97 <alexandru.tripon97@gmail.com>2023-06-23 20:01:17 +0300
committerTrial97 <alexandru.tripon97@gmail.com>2023-06-23 20:01:17 +0300
commit69c709b05a90f342cc9d1f9337457bb5519a87a9 (patch)
tree4ff1cbe8123b627bfb171c119b3adc4e2ddaf89b /launcher/news
parent3e3be9ae6f902cc292ee26e4d330b078ddbb2a46 (diff)
parent046d510134a0061c0a1fa89fda80355c9e2f11ff (diff)
downloadPrismLauncher-69c709b05a90f342cc9d1f9337457bb5519a87a9.tar.gz
PrismLauncher-69c709b05a90f342cc9d1f9337457bb5519a87a9.tar.bz2
PrismLauncher-69c709b05a90f342cc9d1f9337457bb5519a87a9.zip
Merge branch 'develop' of https://github.com/PrismLauncher/PrismLauncher into develop
Signed-off-by: Trial97 <alexandru.tripon97@gmail.com>
Diffstat (limited to 'launcher/news')
-rw-r--r--launcher/news/NewsChecker.cpp19
-rw-r--r--launcher/news/NewsChecker.h2
2 files changed, 8 insertions, 13 deletions
diff --git a/launcher/news/NewsChecker.cpp b/launcher/news/NewsChecker.cpp
index 1f1520d0..4f02bf5e 100644
--- a/launcher/news/NewsChecker.cpp
+++ b/launcher/news/NewsChecker.cpp
@@ -58,7 +58,7 @@ void NewsChecker::reloadNews()
qDebug() << "Reloading news.";
NetJob::Ptr job{ new NetJob("News RSS Feed", m_network) };
- job->addNetAction(Net::Download::makeByteArray(m_feedUrl, &newsData));
+ job->addNetAction(Net::Download::makeByteArray(m_feedUrl, newsData));
QObject::connect(job.get(), &NetJob::succeeded, this, &NewsChecker::rssDownloadFinished);
QObject::connect(job.get(), &NetJob::failed, this, &NewsChecker::rssDownloadFailed);
m_newsNetJob.reset(job);
@@ -79,32 +79,27 @@ void NewsChecker::rssDownloadFinished()
int errorCol = -1;
// Parse the XML.
- if (!doc.setContent(newsData, false, &errorMsg, &errorLine, &errorCol))
- {
+ if (!doc.setContent(*newsData, false, &errorMsg, &errorLine, &errorCol)) {
QString fullErrorMsg = QString("Error parsing RSS feed XML. %1 at %2:%3.").arg(errorMsg).arg(errorLine).arg(errorCol);
fail(fullErrorMsg);
- newsData.clear();
+ newsData->clear();
return;
}
- newsData.clear();
+ newsData->clear();
}
// If the parsing succeeded, read it.
QDomNodeList items = doc.elementsByTagName("entry");
m_newsEntries.clear();
- for (int i = 0; i < items.length(); i++)
- {
+ for (int i = 0; i < items.length(); i++) {
QDomElement element = items.at(i).toElement();
NewsEntryPtr entry;
entry.reset(new NewsEntry());
QString errorMsg = "An unknown error occurred.";
- if (NewsEntry::fromXmlElement(element, entry.get(), &errorMsg))
- {
+ if (NewsEntry::fromXmlElement(element, entry.get(), &errorMsg)) {
qDebug() << "Loaded news entry" << entry->title;
m_newsEntries.append(entry);
- }
- else
- {
+ } else {
qWarning() << "Failed to load news entry at index" << i << ":" << errorMsg;
}
}
diff --git a/launcher/news/NewsChecker.h b/launcher/news/NewsChecker.h
index 8467a541..41babfff 100644
--- a/launcher/news/NewsChecker.h
+++ b/launcher/news/NewsChecker.h
@@ -85,7 +85,7 @@ protected: /* data */
//! True if news has been loaded.
bool m_loadedNews;
- QByteArray newsData;
+ std::shared_ptr<QByteArray> newsData = std::make_shared<QByteArray>();
/*!
* Gets the error message that was given last time the news was loaded.