diff --git a/libdiscover/appstream/OdrsReviewsBackend.cpp b/libdiscover/appstream/OdrsReviewsBackend.cpp --- a/libdiscover/appstream/OdrsReviewsBackend.cpp +++ b/libdiscover/appstream/OdrsReviewsBackend.cpp @@ -179,7 +179,7 @@ void OdrsReviewsBackend::reviewsFetched() { QNetworkReply* reply = qobject_cast(sender()); - + QScopedPointer replyPtr(reply); if (reply->error() != QNetworkReply::NoError) { qCWarning(LIBDISCOVER_LOG) << "error fetching reviews:" << reply->errorString(); m_isFetching = false; @@ -191,7 +191,6 @@ AbstractResource *resource = qobject_cast(reply->request().originatingObject()); Q_ASSERT(resource); parseReviews(document, resource); - // Store reviews to cache so we don't need to download them all the time if (document.array().isEmpty()) { return; @@ -244,6 +243,7 @@ } else { qCWarning(LIBDISCOVER_LOG) << "Failed to submit usefulness: " << reply->errorString(); } + reply->deleteLater(); } QString OdrsReviewsBackend::userName() const @@ -295,6 +295,7 @@ } else { qCWarning(LIBDISCOVER_LOG) << "Failed to submit review: " << reply->errorString(); } + reply->deleteLater(); } void OdrsReviewsBackend::parseRatings() diff --git a/libdiscover/backends/FlatpakBackend/FlatpakBackend.cpp b/libdiscover/backends/FlatpakBackend/FlatpakBackend.cpp --- a/libdiscover/backends/FlatpakBackend/FlatpakBackend.cpp +++ b/libdiscover/backends/FlatpakBackend/FlatpakBackend.cpp @@ -140,8 +140,8 @@ void start() { auto replyGet = get(QNetworkRequest(m_url)); - connect(replyGet, &QNetworkReply::finished, this, [this, replyGet] { + QScopedPointer replyPtr(replyGet); const QUrl originalUrl = replyGet->request().url(); if (replyGet->error() != QNetworkReply::NoError) { qWarning() << "couldn't download" << originalUrl << replyGet->errorString(); @@ -152,6 +152,7 @@ const QUrl fileUrl = QUrl::fromLocalFile(QStandardPaths::writableLocation(QStandardPaths::TempLocation) + QLatin1Char('/') + originalUrl.fileName()); auto replyPut = put(QNetworkRequest(fileUrl), replyGet->readAll()); connect(replyPut, &QNetworkReply::finished, this, [this, originalUrl, fileUrl, replyPut]() { + QScopedPointer replyPtr(replyPut); if (replyPut->error() != QNetworkReply::NoError) { qWarning() << "couldn't save" << originalUrl << replyPut->errorString(); Q_EMIT jobFinished(false, nullptr);