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
for the new kDebug/kError/kWarning/kFatal syntax.
You can use the following command to find 'old' code:
egrep -r -A 5 '(kDebug|kError|kWarning|kFatal).*' * | grep -v ".svn" | grep "<< *endl;"
svn path=/trunk/KDE/kdepim/; revision=695781
SVN commit 633012 by mkoller:
Related to BUG# 71549
Make sure that a corrupted .ids file does not allocate huge amount
of memory by checking consistency of file length vs. number of
items expected.
The patch does not cure the original problem why the ids
file has corrupt content. I could not find a way how this can happen
up till now
svn path=/branches/kdepim/enterprise/kdepim/; revision=667597
Make sure that a corrupted .ids file does not allocate huge amount
of memory by checking consistency of file length vs. number of
items expected.
The patch does not cure the original problem why the ids
file has corrupt content. I could not find a way how this can happen
up till now
svn path=/trunk/KDE/kdepim/; revision=633013
Make sure that a corrupted .ids file does not allocate huge amount
of memory by checking consistency of file length vs. number of
items expected.
The patch does not cure the original problem why the ids
file has corrupt content. I could not find a way how this can happen
up till now
svn path=/branches/KDE/3.5/kdepim/; revision=633012
530060:
--------------
Fix the following problems as indicated by Christoph Bartoschek in kde-pim:
- kmail/imapjob.cpp:240
- kmail/imapjob.cpp:262 (similar)
If account is NULL as indicated by line 226, then line 240 crashes.
- kmail/imapjob.cpp:104
If msg_parent is NULL as indicated by line 90, then line 104 crashes.
530074:
--------------
Second batch of fixes related to Christoph Bartoschek's report in kde-pim:
- kmail/kmfoldercachedimap.cpp:1749
If the if conditions in line 1741 and 1745 are both false, then line 1749 crashes.
- kmail/kmfoldertree.cpp:1480
If fti is NULL as indicated by line 1475, then line 1480 crashes.
- kmail/kmfoldertree.cpp:164
If mFolder is NULL as indicated by line 154, then line 154, 160 crash.
- kmail/kmfoldertree.cpp:143
If mFolder is NULL as indicated by line 136, then line 143 crashes.
- kmail/kmfoldertree.cpp:1549
If folder is NULL as indicated by line 1537, then line 1549 crashes.
The last bug is only partially fixed, the whole KMFolderTree::slotUpdateCounts(KMFolder * folder)
function could use a rewrite.
530119:
------------
Third batch of fixes related to Christoph Bartoschek's email in kde-pim:
- kmail/imapaccountbase.cpp:1102
If line 1092 gets executed and also 1102, then the second crashes.
- kmail/kmmsgdict.cpp:248
If folder is NULL as indicated by line 244, then line 248 crashes.
- kmail/kmmsgdict.cpp:214
If folder is NULL as indicated by line 208, then line 214,225, crashes.
- kmail/renamejob.cpp:64
If storage is NULL as indicated by line 57, then line 62 crashes.
Lines where the operator preference between & and == leads to an error.
- kmail/kmmsgbase.cpp:873
- kmail/kmfolderimap.cpp:876
If f is NULL as indicated by line 869, then line 876 crashes.
- kmail/kmsender.cpp:362
If sentFolder is NULL as indicated by line 340, then line 362, 367
crashes.
Thanks to Christoph for working on this.
svn path=/trunk/KDE/kdepim/; revision=532932
- kmail/imapaccountbase.cpp:1102
If line 1092 gets executed and also 1102, then the second crashes.
- kmail/kmmsgdict.cpp:248
If folder is NULL as indicated by line 244, then line 248 crashes.
- kmail/kmmsgdict.cpp:214
If folder is NULL as indicated by line 208, then line 214,225, crashes.
- kmail/renamejob.cpp:64
If storage is NULL as indicated by line 57, then line 62 crashes.
Lines where the operator preference between & and == leads to an error.
- kmail/kmmsgbase.cpp:873
- kmail/kmfolderimap.cpp:876
If f is NULL as indicated by line 869, then line 876 crashes.
- kmail/kmsender.cpp:362
If sentFolder is NULL as indicated by line 340, then line 362, 367
crashes.
Thanks to Christoph for working on this.
svn path=/branches/KDE/3.5/kdepim/; revision=530119
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
were "saved" to kmailrc, but kmailrc wasn't synced, so in case of a kmail crash, X crash, power failure, kernel oops...
the settings would be lost, and on the next kmail restart very strange errors would happen when syncing
(can't create folder, folder already there, folder missing, etc.)
The solution: sync(). But while being at it I implemented buffering of sync requests
which was a TODO in kmkernel, but did it in GlobalSettings as Till suggested;
which in turn means we need our own GlobalSettings inheriting GlobalSettingsBase,
and the code lacked ::self()-> in many places to allow that.
srcdir!=builddir users: don't forget to delete globalsettings.{cpp,h} from the builddir
since it's not generated anymore!
CCMAIL: kmail-devel@kde.org
svn path=/trunk/KDE/kdepim/; revision=432538
were "saved" to kmailrc, but kmailrc wasn't synced, so in case of a kmail crash, X crash, power failure, kernel oops...
the settings would be lost, and on the next kmail restart very strange errors would happen when syncing
(can't create folder, folder already there, folder missing, etc.)
The solution: sync(). But while being at it I implemented buffering of sync requests
which was a TODO in kmkernel, but did it in GlobalSettings as Till suggested;
which in turn means we need our own GlobalSettings inheriting GlobalSettingsBase,
and the code lacked ::self()-> in many places to allow that.
svn path=/branches/kdepim/proko2/kdepim/; revision=432536
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
o remove access to the reverse per folder message dict entries from the
folder interface. It's in FolderStorage and accessed through there
svn path=/trunk/KDE/kdepim/; revision=427075
into an imap folder.
As per the "PATCH: KMFolderImap::slotGetMessagesData discrepancy"
discussion on the kmail-devel list.
I've tested it for weeks now without noticing any problems.
svn path=/trunk/kdepim/; revision=365366
total number of messages and store it in a secret config key and then
retrieve that on the next invocation of KMail and use it to initialize
the dict size to nextPrime( lastSizeHint * 1.1 ).
The fancy math is due to I. Kloecker, who is reportedly good with numbers,
so I'll just take his word for it. ;)
svn path=/trunk/kdepim/; revision=299657
msg dict. Unlike replace() it does not check for already existing entries
with the same serial number, as the calling code ensures that is not
the case. Makes KMail start a bit faster.
svn path=/trunk/kdepim/; revision=299586