From 18491750fb24d09b858a7ef2e11ff837215811ec Mon Sep 17 00:00:00 2001 From: martinrotter Date: Thu, 18 May 2017 06:12:28 +0200 Subject: [PATCH] Fix msg query and sanitize title of msgs better. --- src/core/messagesmodelsqllayer.cpp | 2 +- src/services/abstract/feed.cpp | 6 +++++- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/src/core/messagesmodelsqllayer.cpp b/src/core/messagesmodelsqllayer.cpp index 2000ef9ad..ba5d0fa51 100755 --- a/src/core/messagesmodelsqllayer.cpp +++ b/src/core/messagesmodelsqllayer.cpp @@ -83,7 +83,7 @@ QString MessagesModelSqlLayer::formatFields() const { QString MessagesModelSqlLayer::selectStatement() const { return QL1S("SELECT ") + formatFields() + - QSL(" FROM Messages LEFT JOIN Feeds ON Messages.feed = Feeds.custom_id WHERE ") + + QSL(" FROM Messages LEFT JOIN Feeds ON Messages.feed = Feeds.custom_id AND Messages.account_id = Feeds.account_id WHERE ") + m_filter + orderByClause() + QL1C(';'); } diff --git a/src/services/abstract/feed.cpp b/src/services/abstract/feed.cpp index 6e0f35ea5..52f27ab60 100755 --- a/src/services/abstract/feed.cpp +++ b/src/services/abstract/feed.cpp @@ -175,7 +175,11 @@ void Feed::run() { // Also, make sure that HTML encoding, encoding of special characters, etc., is fixed. msgs[i].m_contents = QUrl::fromPercentEncoding(msgs[i].m_contents.toUtf8()); msgs[i].m_author = msgs[i].m_author.toUtf8(); - msgs[i].m_title = QUrl::fromPercentEncoding(msgs[i].m_title.toUtf8()); + + // Sanitize title. Remove newlines etc. + msgs[i].m_title = QUrl::fromPercentEncoding(msgs[i].m_title.toUtf8()) + .remove(QRegExp(QSL("[\\n\\r\\t]"))) + .replace(QRegExp(QSL("[]")), QSL(" ")); } emit messagesObtained(msgs, error_during_obtaining);