diff options
| author | Pekka Vuorela <pvuorela@iki.fi> | 2025-11-04 09:32:10 +0200 |
|---|---|---|
| committer | Pekka Vuorela <pvuorela@iki.fi> | 2025-11-06 17:36:43 +0200 |
| commit | ced6584c65498661db5012602b0465e293476da0 (patch) | |
| tree | b10b8599bbfbeefa41f8ba84590b8b4aca531c76 | |
| parent | 7e135a5c9305e889003b8c2cebb41633aaba012c (diff) | |
Avoid some more compiler warnings
- Missed earlier one QMessageBox deprecation from separate file
- LongStream now doing consistent open() check in all code paths.
Also removed unused member variable 'c' and moved internal constants
to .cpp.
- imapstrategy.h / ImapMessageListStrategy::selectedSectionsAppend()
was dead code due to derived class ImapFetchSelectedMessagesStrategy
having similar named method with extra parameter and default value.
- ImapService was triggering a couple of -Woverloaded-virtual
warnings due to having extra methods with same name as base class.
These were really used internally so simpler as different named private.
- ImapProtocol / QString::lastIndexOf() was complaining about unused
return value. Using that should be even simpler than accessing regexp
match.
- Some small random warnings on unused parameters, missed switch case etc.
Change-Id: I243c09ab2d551fe2f8be18f1b3a4df2e3d84b55c
Reviewed-by: Pekka Vuorela <pvuorela@iki.fi>
Reviewed-by: Damien Caliste <dcaliste@free.fr>
Reviewed-by: <matti.viljanen@kapsi.fi>
| -rw-r--r-- | examples/qtmail/attachmentoptions.cpp | 7 | ||||
| -rw-r--r-- | examples/qtmail/emailclient.cpp | 2 | ||||
| -rw-r--r-- | examples/qtmail/qmailcomposer.cpp | 7 | ||||
| -rw-r--r-- | examples/qtmail/qmailviewer.cpp | 2 | ||||
| -rw-r--r-- | examples/serverobserver/serverobserver.cpp | 11 | ||||
| -rw-r--r-- | src/libraries/qmfmessageserver/longstream.cpp | 54 | ||||
| -rw-r--r-- | src/libraries/qmfmessageserver/longstream_p.h | 8 | ||||
| -rw-r--r-- | src/plugins/messageservices/imap/imapprotocol.cpp | 3 | ||||
| -rw-r--r-- | src/plugins/messageservices/imap/imapservice.cpp | 37 | ||||
| -rw-r--r-- | src/plugins/messageservices/imap/imapstrategy.cpp | 9 | ||||
| -rw-r--r-- | src/plugins/messageservices/imap/imapstrategy.h | 1 | ||||
| -rw-r--r-- | src/tools/messageserver/messageserver.cpp | 4 |
12 files changed, 72 insertions, 73 deletions
diff --git a/examples/qtmail/attachmentoptions.cpp b/examples/qtmail/attachmentoptions.cpp index a6c1da5c..c8f55af3 100644 --- a/examples/qtmail/attachmentoptions.cpp +++ b/examples/qtmail/attachmentoptions.cpp @@ -607,11 +607,8 @@ void AttachmentOptions::saveAttachment() _document->setVisible(true); _save->setVisible(false); } else { - QMessageBox mb(tr("Unable to save attachment"), - tr("Please ensure that there is space available for Documents"), - QMessageBox::Warning, - QMessageBox::Ok | QMessageBox::Default, QMessageBox::NoButton, QMessageBox::NoButton); - mb.exec(); + QMessageBox::warning(nullptr, tr("Unable to save attachment"), + tr("Please ensure that there is space available for Documents")); } } diff --git a/examples/qtmail/emailclient.cpp b/examples/qtmail/emailclient.cpp index a6c92b9f..8307c1c6 100644 --- a/examples/qtmail/emailclient.cpp +++ b/examples/qtmail/emailclient.cpp @@ -468,7 +468,7 @@ EmailClient::EmailClient(QWidget *parent, Qt::WindowFlags f) setObjectName( "EmailClient" ); //start messageserver if it's not running - if (!QMail::isMessageServerRunning && !startMessageServer()) + if (!QMail::isMessageServerRunning() && !startMessageServer()) qFatal("Unable to start messageserver!"); //run account setup if we don't have any defined yet diff --git a/examples/qtmail/qmailcomposer.cpp b/examples/qtmail/qmailcomposer.cpp index 35a58c5e..e9eaf97a 100644 --- a/examples/qtmail/qmailcomposer.cpp +++ b/examples/qtmail/qmailcomposer.cpp @@ -319,6 +319,7 @@ QString QMailComposerFactory::defaultKey( QMailMessage::MessageType type ) */ QList<QMailMessage::MessageType> QMailComposerFactory::messageTypes( const QString& key ) { + Q_UNUSED(key) return composerInterface()->messageTypes(); } @@ -329,6 +330,7 @@ QList<QMailMessage::MessageType> QMailComposerFactory::messageTypes( const QStri */ QString QMailComposerFactory::name(const QString &key, QMailMessage::MessageType type) { + Q_UNUSED(key) return composerInterface()->name(type); } @@ -339,6 +341,7 @@ QString QMailComposerFactory::name(const QString &key, QMailMessage::MessageType */ QString QMailComposerFactory::displayName(const QString &key, QMailMessage::MessageType type) { + Q_UNUSED(key) return composerInterface()->displayName(type); } @@ -349,6 +352,7 @@ QString QMailComposerFactory::displayName(const QString &key, QMailMessage::Mess */ QIcon QMailComposerFactory::displayIcon(const QString &key, QMailMessage::MessageType type) { + Q_UNUSED(key) return composerInterface()->displayIcon(type); } @@ -358,7 +362,6 @@ QIcon QMailComposerFactory::displayIcon(const QString &key, QMailMessage::Messag */ QMailComposerInterface *QMailComposerFactory::create( const QString& key, QWidget *parent ) { - Q_UNUSED(parent); + Q_UNUSED(key) return new EmailComposerInterface(parent); } - diff --git a/examples/qtmail/qmailviewer.cpp b/examples/qtmail/qmailviewer.cpp index 180312e1..7ef32988 100644 --- a/examples/qtmail/qmailviewer.cpp +++ b/examples/qtmail/qmailviewer.cpp @@ -332,7 +332,7 @@ QString QMailViewerFactory::defaultKey(QMailMessage::ContentType type, Presentat */ QMailViewerInterface *QMailViewerFactory::create(const QString &key, QWidget *parent) { - Q_UNUSED(parent); + Q_UNUSED(key); return new GenericViewer(parent); } diff --git a/examples/serverobserver/serverobserver.cpp b/examples/serverobserver/serverobserver.cpp index 64a7772d..56051b47 100644 --- a/examples/serverobserver/serverobserver.cpp +++ b/examples/serverobserver/serverobserver.cpp @@ -99,8 +99,7 @@ RowWidget::RowWidget(QSharedPointer<QMailActionInfo> action, QWidget *parent) QString RowWidget::requestTypeToString(QMailServerRequestType t) { - switch (t) - { + switch (t) { case AcknowledgeNewMessagesRequestType: return tr("Acknowledging new messages"); case TransmitMessagesRequestType: @@ -147,12 +146,10 @@ QString RowWidget::requestTypeToString(QMailServerRequestType t) return tr("Listing actions"); case ProtocolRequestRequestType: return tr("Direct protocol request"); - // No default, to get warning when requests added + default: + qWarning() << "Did not handle:" << t; + return tr("Unknown/handled request."); } - - qWarning() << "Did not handle:" << t; - Q_ASSERT(false); - return tr("Unknown/handled request."); } void RowWidget::sendCancel() diff --git a/src/libraries/qmfmessageserver/longstream.cpp b/src/libraries/qmfmessageserver/longstream.cpp index fc30ac5f..f0335c14 100644 --- a/src/libraries/qmfmessageserver/longstream.cpp +++ b/src/libraries/qmfmessageserver/longstream.cpp @@ -42,14 +42,17 @@ #include <QDir> #include <QStorageInfo> -/* Helper class to reduce memory usage while downloading large mails */ +static const unsigned long long MinFree = 1024*100; +static const uint MinCheck = 1024*10; + +/* Helper class to reduce memory usage while downloading large mails */ LongStream::LongStream() : mStatus(Ok) { QString tmpName(QMail::tempPath() + QLatin1String("longstream")); len = 0; - appendedBytes = minCheck; + appendedBytes = MinCheck; tmpFile = new QTemporaryFile( tmpName + QLatin1String( ".XXXXXX" )); if (tmpFile->open()) { @@ -57,7 +60,7 @@ LongStream::LongStream() ts = new QDataStream( tmpFile ); } else { qCWarning(lcMessaging) << "Unable to open temporary file:" << tmpFile->fileName(); - ts = 0; + ts = nullptr; setStatus(OutOfSpace); } } @@ -72,17 +75,21 @@ LongStream::~LongStream() void LongStream::reset() { delete ts; + ts = nullptr; - tmpFile->resize( 0 ); - tmpFile->close(); - tmpFile->open(); - - ts = new QDataStream( tmpFile ); len = 0; - appendedBytes = minCheck; + appendedBytes = MinCheck; - c = QChar::Null; - resetStatus(); + tmpFile->resize(0); + tmpFile->close(); + + if (!tmpFile->open()) { + qCWarning(lcMessaging) << "Unable to open temporary file:" << tmpFile->fileName(); + setStatus(OutOfSpace); + } else { + ts = new QDataStream( tmpFile ); + resetStatus(); + } } QString LongStream::detach() @@ -90,23 +97,26 @@ QString LongStream::detach() QString detachedName = fileName(); delete ts; + ts = nullptr; tmpFile->setAutoRemove(false); tmpFile->close(); delete tmpFile; + len = 0; + appendedBytes = MinCheck; + QString tmpName(QMail::tempPath() + QLatin1String("longstream")); tmpFile = new QTemporaryFile( tmpName + QLatin1String( ".XXXXXX" )); - tmpFile->open(); - tmpFile->setPermissions(QFile::ReadOwner | QFile::WriteOwner); - - ts = new QDataStream( tmpFile ); - len = 0; - appendedBytes = minCheck; - - c = QChar::Null; - resetStatus(); + if (!tmpFile->open()) { + qCWarning(lcMessaging) << "Unable to open temporary file:" << tmpFile->fileName(); + setStatus(OutOfSpace); + } else { + tmpFile->setPermissions(QFile::ReadOwner | QFile::WriteOwner); + ts = new QDataStream( tmpFile ); + resetStatus(); + } return detachedName; } @@ -118,7 +128,7 @@ void LongStream::append(QString str) len += str.length(); appendedBytes += str.length(); - if (appendedBytes >= minCheck) { + if (appendedBytes >= MinCheck) { appendedBytes = 0; updateStatus(); } @@ -177,7 +187,7 @@ void LongStream::setStatus( Status status ) bool LongStream::freeSpace( const QString &path, int min) { - long long boundary = minFree; + long long boundary = MinFree; if (min >= 0) boundary = min; diff --git a/src/libraries/qmfmessageserver/longstream_p.h b/src/libraries/qmfmessageserver/longstream_p.h index 7c236057..acde36cd 100644 --- a/src/libraries/qmfmessageserver/longstream_p.h +++ b/src/libraries/qmfmessageserver/longstream_p.h @@ -58,6 +58,8 @@ QT_END_NAMESPACE class MESSAGESERVER_EXPORT LongStream { public: + enum Status { Ok, OutOfSpace }; + LongStream(); virtual ~LongStream(); @@ -68,7 +70,6 @@ public: QString fileName(); QString readAll(); - enum Status { Ok, OutOfSpace }; Status status(); void resetStatus(); void setStatus( Status ); @@ -82,12 +83,9 @@ public: private: QTemporaryFile *tmpFile; QDataStream *ts; - QChar c; int len; uint appendedBytes; Status mStatus; - - static const unsigned long long minFree = 1024*100; - static const uint minCheck = 1024*10; }; + #endif diff --git a/src/plugins/messageservices/imap/imapprotocol.cpp b/src/plugins/messageservices/imap/imapprotocol.cpp index 5d8ca1ba..798f47e4 100644 --- a/src/plugins/messageservices/imap/imapprotocol.cpp +++ b/src/plugins/messageservices/imap/imapprotocol.cpp @@ -2500,8 +2500,7 @@ bool UidFetchState::appendLiteralData(ImapContext *c, const QString &preceding) } QRegularExpressionMatch match; - preceding.lastIndexOf(pattern, -1, &match); - int index = match.capturedStart(0); + int index = preceding.lastIndexOf(pattern, -1, &match); if (index != -1) { if ((index + match.captured(0).length()) == preceding.length()) { // Detach the retrieved data to a file we have ownership of diff --git a/src/plugins/messageservices/imap/imapservice.cpp b/src/plugins/messageservices/imap/imapservice.cpp index e060fc6d..f4f0d1dd 100644 --- a/src/plugins/messageservices/imap/imapservice.cpp +++ b/src/plugins/messageservices/imap/imapservice.cpp @@ -116,11 +116,6 @@ public slots: uint minimum, const QMailMessageSortKey &sort) override; bool retrieveNewMessages(const QMailAccountId &accountId, const QMailFolderIdList &_folderIds) override; - virtual bool retrieveMessageLists(const QMailAccountId &accountId, - const QMailFolderIdList &_folderIds, - uint minimum, - const QMailMessageSortKey &sort, - bool accountCheck); bool retrieveMessages(const QMailMessageIdList &messageIds, QMailRetrievalAction::RetrievalSpecification spec) override; @@ -147,8 +142,6 @@ public slots: const QMailMessageSortKey &sort) override; bool searchMessages(const QMailMessageKey &searchCriteria, const QString &bodyText, quint64 limit, const QMailMessageSortKey &sort) override; - virtual bool searchMessages(const QMailMessageKey &searchCriteria, const QString &bodyText, - quint64 limit, const QMailMessageSortKey &sort, bool count); bool countMessages(const QMailMessageKey &searchCriteria, const QString &bodyText) override; bool cancelSearch() override; @@ -167,7 +160,16 @@ public slots: void emitActionSuccessfullyCompleted(); private: + bool doRetrieveMessageLists(const QMailAccountId &accountId, + const QMailFolderIdList &_folderIds, + uint minimum, + const QMailMessageSortKey &sort, + bool accountCheck); + bool doDelete(const QMailMessageIdList & ids); + bool doSearchMessages(const QMailMessageKey &searchCriteria, const QString &bodyText, + quint64 limit, const QMailMessageSortKey &sort, bool count); + virtual bool setStrategy(ImapStrategy *strategy, const char *signal = Q_NULLPTR); @@ -233,17 +235,17 @@ bool ImapService::Source::retrieveMessageLists(const QMailAccountId &accountId, return true; } - return retrieveMessageLists(accountId, ids, minimum, sort, true /* accountCheck */); + return doRetrieveMessageLists(accountId, ids, minimum, sort, true /* accountCheck */); } bool ImapService::Source::retrieveMessageList(const QMailAccountId &accountId, const QMailFolderId &folderId, uint minimum, const QMailMessageSortKey &sort) { Q_ASSERT(!_unavailable); if (folderId.isValid()) { - return retrieveMessageLists(accountId, QMailFolderIdList() << folderId, minimum, sort, true /* Full check */); + return doRetrieveMessageLists(accountId, QMailFolderIdList() << folderId, minimum, sort, true /* Full check */); } - return retrieveMessageLists(accountId, QMailFolderIdList(), minimum, sort, true /* Full check */); + return doRetrieveMessageLists(accountId, QMailFolderIdList(), minimum, sort, true /* Full check */); } bool ImapService::Source::retrieveNewMessages(const QMailAccountId &accountId, const QMailFolderIdList &folderIds) @@ -264,11 +266,12 @@ bool ImapService::Source::retrieveNewMessages(const QMailAccountId &accountId, c // Use defaultMinimum so that for a freshly created push enabled account // defaultMinimum messages are retrieved. But this means when new push // emails arrive, flags will be checked, but for only defaultMinimum messages. - return retrieveMessageLists(accountId, ids, QMailRetrievalAction::defaultMinimum(), QMailMessageSortKey(), - false /* not accountCheck, don't detect flag changes and removed messages */); + return doRetrieveMessageLists(accountId, ids, QMailRetrievalAction::defaultMinimum(), QMailMessageSortKey(), + false /* not accountCheck, don't detect flag changes and removed messages */); } -bool ImapService::Source::retrieveMessageLists(const QMailAccountId &accountId, const QMailFolderIdList &_folderIds, uint minimum, const QMailMessageSortKey &sort, bool accountCheck) +bool ImapService::Source::doRetrieveMessageLists(const QMailAccountId &accountId, const QMailFolderIdList &_folderIds, + uint minimum, const QMailMessageSortKey &sort, bool accountCheck) { Q_ASSERT(!_unavailable); if (!_service->_client) { @@ -1073,24 +1076,24 @@ bool ImapService::Source::searchMessages(const QMailMessageKey &searchCriteria, { QMailAccountConfiguration accountCfg(_service->accountId()); ImapConfiguration imapCfg(accountCfg); - return searchMessages(searchCriteria, bodyText, imapCfg.searchLimit(), sort, false); + return doSearchMessages(searchCriteria, bodyText, imapCfg.searchLimit(), sort, false); } bool ImapService::Source::searchMessages(const QMailMessageKey &searchCriteria, const QString &bodyText, quint64 limit, const QMailMessageSortKey &sort) { QMailAccountConfiguration accountCfg(_service->accountId()); ImapConfiguration imapCfg(accountCfg); - return searchMessages(searchCriteria, bodyText, limit, sort, false); + return doSearchMessages(searchCriteria, bodyText, limit, sort, false); } bool ImapService::Source::countMessages(const QMailMessageKey &searchCriteria, const QString &bodyText) { QMailAccountConfiguration accountCfg(_service->accountId()); ImapConfiguration imapCfg(accountCfg); - return searchMessages(searchCriteria, bodyText, 0, QMailMessageSortKey(), true); + return doSearchMessages(searchCriteria, bodyText, 0, QMailMessageSortKey(), true); } -bool ImapService::Source::searchMessages(const QMailMessageKey &searchCriteria, const QString &bodyText, quint64 limit, const QMailMessageSortKey &sort, bool count) +bool ImapService::Source::doSearchMessages(const QMailMessageKey &searchCriteria, const QString &bodyText, quint64 limit, const QMailMessageSortKey &sort, bool count) { Q_ASSERT(!_unavailable); if (!_service->_client) { diff --git a/src/plugins/messageservices/imap/imapstrategy.cpp b/src/plugins/messageservices/imap/imapstrategy.cpp index 9588edde..694bdbf8 100644 --- a/src/plugins/messageservices/imap/imapstrategy.cpp +++ b/src/plugins/messageservices/imap/imapstrategy.cpp @@ -1181,15 +1181,6 @@ void ImapMessageListStrategy::selectedMailsAppend(const QMailMessageIdList& ids) } } -void ImapMessageListStrategy::selectedSectionsAppend(const QMailMessagePart::Location &location) -{ - QMailMessageMetaData metaData(location.containingMessageId()); - if (metaData.id().isValid()) { - uint serverUid(stripFolderPrefix(metaData.serverUid()).toUInt()); - _selectionMap[QMailDisconnected::sourceFolderId(metaData)].append(MessageSelector(serverUid, metaData.id(), SectionProperties(location))); - } -} - void ImapMessageListStrategy::newConnection(ImapStrategyContextBase *context) { setCurrentMailbox(QMailFolderId()); diff --git a/src/plugins/messageservices/imap/imapstrategy.h b/src/plugins/messageservices/imap/imapstrategy.h index 44ced05c..aa56889c 100644 --- a/src/plugins/messageservices/imap/imapstrategy.h +++ b/src/plugins/messageservices/imap/imapstrategy.h @@ -273,7 +273,6 @@ public: virtual void clearSelection(); virtual void selectedMailsAppend(const QMailMessageIdList &ids); - virtual void selectedSectionsAppend(const QMailMessagePart::Location &location); void newConnection(ImapStrategyContextBase *context) override; void transition(ImapStrategyContextBase*, const ImapCommand, const OperationStatus) override; diff --git a/src/tools/messageserver/messageserver.cpp b/src/tools/messageserver/messageserver.cpp index 3c7c90cc..26dc9ace 100644 --- a/src/tools/messageserver/messageserver.cpp +++ b/src/tools/messageserver/messageserver.cpp @@ -542,7 +542,9 @@ void MessageServer::readLogSettings() const logFile.setFileName(fileName); } if (!logFile.isOpen()) { - logFile.open(QIODevice::WriteOnly | QIODevice::Append | QIODevice::Unbuffered); + if (!logFile.open(QIODevice::WriteOnly | QIODevice::Append | QIODevice::Unbuffered)) { + qWarning() << "Unable to open log file" << fileName; + } } } else { logFile.close(); |
