From 68764732ab398e365a5a8f67997c20df67910926 Mon Sep 17 00:00:00 2001 From: Martin Rotter Date: Tue, 22 Aug 2023 08:05:47 +0200 Subject: [PATCH] make sure that filters AND DB storing runs in a "serialized" manner --- src/librssguard/core/feeddownloader.cpp | 6 +++--- src/librssguard/services/standard/standardfeed.cpp | 9 ++++++--- 2 files changed, 9 insertions(+), 6 deletions(-) diff --git a/src/librssguard/core/feeddownloader.cpp b/src/librssguard/core/feeddownloader.cpp index ba2eff232..bf47f6d24 100644 --- a/src/librssguard/core/feeddownloader.cpp +++ b/src/librssguard/core/feeddownloader.cpp @@ -259,6 +259,8 @@ void FeedDownloader::updateOneFeed(ServiceRoot* acc, } } + QMutexLocker lck(&m_mutexDb); + if (!feed->messageFilters().isEmpty()) { tmr.restart(); @@ -276,8 +278,6 @@ void FeedDownloader::updateOneFeed(ServiceRoot* acc, QList read_msgs, important_msgs; for (int i = 0; i < msgs.size(); i++) { - QMutexLocker lck(&m_mutexDb); - Message msg_original(msgs[i]); Message* msg_tweaked_by_filter = &msgs[i]; @@ -406,7 +406,7 @@ void FeedDownloader::updateOneFeed(ServiceRoot* acc, removeDuplicateMessages(msgs); tmr.restart(); - auto updated_messages = acc->updateMessages(msgs, feed, false, &m_mutexDb); + auto updated_messages = acc->updateMessages(msgs, feed, false, nullptr); qDebugNN << LOGSEC_FEEDDOWNLOADER << "Updating messages in DB took" << NONQUOTE_W_SPACE(tmr.nsecsElapsed() / 1000) << "microseconds."; diff --git a/src/librssguard/services/standard/standardfeed.cpp b/src/librssguard/services/standard/standardfeed.cpp index f5099a4e5..db0787c63 100644 --- a/src/librssguard/services/standard/standardfeed.cpp +++ b/src/librssguard/services/standard/standardfeed.cpp @@ -53,9 +53,12 @@ QList StandardFeed::contextMenuFeedsList() { } QString StandardFeed::additionalTooltip() const { - return Feed::additionalTooltip() + tr("\nEncoding: %2\n" - "Type: %3") - .arg(encoding(), StandardFeed::typeToString(type())); + return Feed::additionalTooltip() + tr("\nEncoding: %1\n" + "Type: %2\n" + "Post-processing script: %3") + .arg(encoding(), + StandardFeed::typeToString(type()), + m_postProcessScript.isEmpty() ? QSL("-") : m_postProcessScript); } bool StandardFeed::canBeDeleted() const {