[Bug 140195] deleting maildir does not delete associated .index.ids file

CSights csights at fastmail.fm
Fri Feb 2 21:54:42 GMT 2007


------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.
         
http://bugs.kde.org/show_bug.cgi?id=140195         




------- Additional Comments From csights fastmail fm  2007-02-02 22:54 -------
Hi!  I think I've figured this bug out:

	The KMFolder destructor calls
FolderStorage::deregisterFromMessageDict() and this causes the .index.ids
file to be written to disk again after kmail originally deleted it.
	This can be avoided if "mExportsSernums = false;" after the .index.ids
file is deleted in FolderStorage::remove().
	This works because just before writing the .index.ids the code
(FolderStorage::writeFolderIdsFile()) does not write the .index.ids file
if mExportsSernums == false.


folderstorage.cpp
--------------------------------------------------------
void FolderStorage::remove()

   if ( mExportsSernums )
+  {
     KMMsgDict::mutableInstance()->removeFolderIds( *this );
+    mExportsSernums = false;   // do not writeFolderIds after removal
+  }
--------------------------------------------------------

	BTW: I don't know what "int FolderStorage::expunge()" does, but because
the logic is so similar to "FolderStorage::remove()" someone who knows what is
going on might consider modifying it in a similar way.

Thanks!
  C.



More information about the Kdepim-bugs mailing list