Gentoo Archives: gentoo-commits

From: "Jorge Manuel B. S. Vicetto (jmbsvicetto)" <jmbsvicetto@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] gentoo-x86 commit in kde-base/kmail/files: kmail-4.3.1-fix-rename-folder-on-disconnected-IMAP.patch
Date: Fri, 02 Oct 2009 22:42:10
Message-Id: E1MtqpF-0000dC-0T@stork.gentoo.org
1 jmbsvicetto 09/10/02 22:42:09
2
3 Added:
4 kmail-4.3.1-fix-rename-folder-on-disconnected-IMAP.patch
5 Log:
6 Moved updated kmail ebuild from kde-testing overlay to the tree - thanks to Maciej Mrozowski (reavertm).
7 Added kmail-4.3.1 patch to fix folder renaming on disconnected IMAP.
8 (Portage version: 2.2_rc42/cvs/Linux x86_64)
9
10 Revision Changes Path
11 1.1 kde-base/kmail/files/kmail-4.3.1-fix-rename-folder-on-disconnected-IMAP.patch
12
13 file : http://sources.gentoo.org/viewcvs.py/gentoo-x86/kde-base/kmail/files/kmail-4.3.1-fix-rename-folder-on-disconnected-IMAP.patch?rev=1.1&view=markup
14 plain: http://sources.gentoo.org/viewcvs.py/gentoo-x86/kde-base/kmail/files/kmail-4.3.1-fix-rename-folder-on-disconnected-IMAP.patch?rev=1.1&content-type=text/plain
15
16 Index: kmail-4.3.1-fix-rename-folder-on-disconnected-IMAP.patch
17 ===================================================================
18 Index: kmail/cachedimapjob.cpp
19 ===================================================================
20 --- kmail/cachedimapjob.cpp (revision 1022962)
21 +++ kmail/cachedimapjob.cpp (revision 1022963)
22 @@ -510,7 +510,7 @@
23 bool b = kmkernel->iCalIface().isResourceQuiet();
24 kmkernel->iCalIface().setResourceQuiet( true );
25
26 - mFolder->take( i );
27 + mFolder->takeTemporarily( i );
28 mFolder->addMsgKeepUID( mMsg );
29 mMsg->setTransferInProgress( false );
30
31 Index: kmail/kmfoldercachedimap.cpp
32 ===================================================================
33 --- kmail/kmfoldercachedimap.cpp (revision 1022962)
34 +++ kmail/kmfoldercachedimap.cpp (revision 1022963)
35 @@ -527,6 +527,11 @@
36 return KMFolderMaildir::take( idx );
37 }
38
39 +void KMFolderCachedImap::takeTemporarily( int idx )
40 +{
41 + KMFolderMaildir::take( idx );
42 +}
43 +
44 int KMFolderCachedImap::addMsgInternal( KMMessage *msg, bool newMail, int *index_return )
45 {
46 // Possible optimization: Only dirty if not filtered below
47 Index: kmail/kmfoldercachedimap.h
48 ===================================================================
49 --- kmail/kmfoldercachedimap.h (revision 1022962)
50 +++ kmail/kmfoldercachedimap.h (revision 1022963)
51 @@ -228,10 +228,23 @@
52 /** Reimplemented from KMFolder. Moving is not supported, so aParent must be 0. */
53 virtual int rename( const QString &aName, KMFolderDir *aParent = 0 );
54
55 - /** Reimplemented from KMFolderMaildir */
56 - virtual KMMessage *take( int idx );
57 bool canDeleteMessages() const;
58
59 + /**
60 + * Reimplemented from KMFolderMaildir
61 + * This deletes the message permanently, also from the server. For this,
62 + * rememberDeletion() is called, so that the message can be deleted from
63 + * the server on the next sync.
64 + */
65 + virtual KMMessage* take( int idx );
66 +
67 + /**
68 + * Like take(), only that the deletion is not remembered, i.e. the
69 + * message will not be deleted from the server. Calling this can cause
70 + * inconsistencies, so make sure you re-add the message later!
71 + */
72 + void takeTemporarily( int idx );
73 +
74 /** Reimplemented from KMFolderMaildir */
75 virtual int addMsg( KMMessage *msg, int *index_return = 0 );
76
77 Index: kmail/kmfoldercachedimap.cpp
78 ===================================================================
79 --- kmail/kmfoldercachedimap.cpp (revision 1022963)
80 +++ kmail/kmfoldercachedimap.cpp (revision 1022964)
81 @@ -1678,6 +1678,11 @@
82 job->start();
83 return true;
84 } else {
85 +
86 + // Nothing to delete on the server, make sure the map is clear again.
87 + // Normally this wouldn't be necessary, but there can be stale maps because of
88 + // https://issues.kolab.org/issue3833.
89 + mDeletedUIDsSinceLastSync.clear();
90 return false;
91 }
92 }