- Actually make use of mmap again, this will make calls
to KMMsgBase::getLongPart() a lot faster
- call KMMsgBase::date() less by putting it on the outside
of the loop.
In fact, I think this loop is unnecessary, performance seems
to be much better without it.
Both things above only speed up switching to folders that have the same
subject often, like commit folders.
Most slowness still comes from KMFolderIndex::find(), which uses
QVector::indexOf, which is too slow for a folder with 20k messages
svn path=/trunk/KDE/kdepim/; revision=807448
to skip message "The index of folder .. seems to be out of date" for maildir folders
This can probbaly fix recently reported issues with displaying the message for maildir folders.
-int KMFolderIndex::writeMessages( KMMsgBase* msg, bool flush, FILE* indexStream ):
added overload with indexStream arg, which simplifies KMFolderIndex::writeIndex() code
and avoids dangerous side effects
(note: this apparently was not a source of problems, though)
CCMAIL:kde-pim@kde.org
svn path=/trunk/KDE/kdepim/; revision=805447
- Enable some code again
- style fixes
Still totally broken, though.
Do not use a KMail version newer than the nommap branch merge.
svn path=/trunk/KDE/kdepim/; revision=805166
from
/branches/work/kmail-nommap (r799390..804487)
/branches/work/kdepim-nommap/kmail (r804484..804960)
The SQLite mode is currently enabled only on Windows (by KMAIL_SQLITE_INDEX define),
so on !Windows, the code for standard 'mmap' mode is compiled.
CCMAIL:kde-pim@kde.org
svn path=/trunk/KDE/kdepim/; revision=805075
- use native separators for utime() (windows)
- writing index: close input stream before renaming the file (windows)
- check result of rename
CCMAIL:danny@commit-digest.org
svn path=/trunk/KDE/kdepim/; revision=780608
FolderStorage::canAccess() now returns bool,
and thus also the same method in KMFolderSearch, KMFolderMaildir,
KMFolderMbox, KMFolder
- Maildir filenames: use '!' character separator instead of ':' for windows
(KMAIL_MAILDIR_FNAME_SEPARATOR macro),
as it is impossible to create a file containing ':' (regardless of the
used filesystem - it is a property of the FS API itself)
- KMFolderMaildir::canAccess() use QFileInfo instead of access() - solves
problem with undefined
X_OK flag on windows and is still enough efficient as there are no hundreds
of dirs in a maildir
- KMFolderIndex::recreateIndex() now returns bool
- KMFolderDir::reload() simplified
svn path=/trunk/KDE/kdepim/; revision=773959
keeping the msginfo pointer around in the message object, and restoring it on
unGet. Should help with a whole class of crashes around filtering, searching
etc. Original patch by Ingo and Andreas, with some fixes and memleak plugs
in corner cases by me. We'll testdrive this a while in enterprise branch, let's
see how it behaves.
CCMAIL: a.gungl@gmx.de
CCMAIL: ingo@kde.org
svn path=/branches/kdepim/enterprise/kdepim/; revision=694327
SVN commit 654636 by mkoller:
BUG#50462
I dare to close this bug report with this commit.
It basically automatically recreates the index whenever a "should never
happen" situation occurs in getting data from the index and retries to get
the requested information.
I hope it works as advertised
svn path=/branches/kdepim/enterprise/kdepim/; revision=668925
I dare to close this bug report with this commit.
It basically automatically recreates the index whenever a "should never
happen" situation occurs in getting data from the index and retries to get
the requested information.
I hope it works as advertised ;-)
svn path=/trunk/KDE/kdepim/; revision=654760
I dare to close this bug report with this commit.
It basically automatically recreates the index whenever a "should never
happen" situation occurs in getting data from the index and retries to get
the requested information.
I hope it works as advertised ;-)
svn path=/branches/KDE/3.5/kdepim/; revision=654636
QMAX/QMIN -> qMax/qMin
I don't know what to do about Q_LONG and Q_ULONG because of the following code in qglobal.h:
#if defined(Q_OS_WIN64)
typedef __int64 Q_LONG; /* word up to 64 bit signed */
typedef unsigned __int64 Q_ULONG; /* word up to 64 bit unsigned */
#else
typedef long Q_LONG; /* word up to 64 bit signed */
typedef unsigned long Q_ULONG; /* word up to 64 bit unsigned */
#endif
Should I simply convert to (unsigned) long?
svn path=/trunk/KDE/kdepim/; revision=468393
fooFolderIdsFile from fooMsgDict, to make the distinction somewhat
clearer
o move the only folder ids handling function not implemented in
FolderStorage to there and out of KMFolderIndex, which also means
it does not have to be virtual
o clarify comments and api dox
svn path=/trunk/KDE/kdepim/; revision=428615
here: http://lists.kde.org/?l=kmail-devel&m=111945756024656&w=2
I've changed the KMMsgDict::instance() to return a pointer instead of a
reference, compared to the patch I posted, after valid criticism from
Marc that the pattern is generally used with a pointer, in KDE, so it's
better not to surprise people here.
svn path=/trunk/KDE/kdepim/; revision=428560