summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorValerio Valerio <valerio.valerio@nokia.com>2012-04-23 11:21:33 +0300
committerValerio Valerio <valerio.valerio@nokia.com>2012-04-23 11:21:33 +0300
commit0466e0c8cf7367b1cf50ca25b3aa5cbeff08eadc (patch)
tree6e185f0a39759bc47ccd0e0c5c49ead018de4290
parent2268816f88fb421b6c9459ef02acc5bf65a17ad6 (diff)
Performance and memory improvements.
-rw-r--r--src/libraries/qmfclient/qmailstore_p.cpp8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/libraries/qmfclient/qmailstore_p.cpp b/src/libraries/qmfclient/qmailstore_p.cpp
index c7df9fb8..9d663069 100644
--- a/src/libraries/qmfclient/qmailstore_p.cpp
+++ b/src/libraries/qmfclient/qmailstore_p.cpp
@@ -2605,8 +2605,8 @@ bool QMailStorePrivate::initStore()
return false;
}
- if (!queryMessages(QMailMessageKey(), QMailMessageSortKey(), 0, 0).isEmpty()
- && queryThreads(QMailThreadKey(), QMailThreadSortKey(), 0, 0).isEmpty()) {
+ if ((countMessages(QMailMessageKey()) != 0)
+ && (countThreads(QMailThreadKey()) == 0)) {
if (!fullThreadTableUpdate())
qWarning() << Q_FUNC_INFO << "Full thread's table update is not completed.";
}
@@ -4766,6 +4766,10 @@ void QMailStorePrivate::unloadDatabase()
messageCache.clear();
uidCache.clear();
threadCache.clear();
+ lastQueryMessageResult.clear();
+ lastQueryThreadResult.clear();
+ requiredTableKeys.clear();
+ expiredTableKeys.clear();
// Close database
QMail::closeDatabase();
databaseUnloadTimer.stop();