Closed Bug 856532 Opened 12 years ago Closed 10 years ago

Mail Move from maildirstore/IMAP/Offline-Use=On to maildirstore/Local Folders doesn't issue "uid xx store +Flags \Deleted" at Move Source folder and doesn't show with strike-thru line even though "Just mark it as deleted"

Categories

(MailNews Core :: Database, defect)

x86
Windows XP
defect
Not set
normal

Tracking

(Not tracked)

VERIFIED WORKSFORME

People

(Reporter: World, Unassigned)

References

(Blocks 1 open bug)

Details

(Whiteboard: [maildir])

[Build ID] > Mozilla/5.0 (Windows NT 5.1; rv:22.0) Gecko/20100101 Thunderbird/22.0a1 > Application Build ID : 20130325031104 Mail Move from maildirstore/IMAP/Offline-Use=On to maildirstore/Local Folders doesn't issue "uid xx store +Flags \Deleted" at Move Source folder and doesn't show with strike-thru line even though "Just mark it as deleted". [Steps to reproduce] (0) IMAP delete model : Just mark it as deleted (1) In maildirstore/IMAP account, copy mails to Offline-Use=On folder (2) Move mail(s) to foldr of maildirstore/Local Folders(type=none). (3) At Move Source folder, mail is removed from thread pane. (4) At Move Target folder, mail is normaly shown. Target\cur\nnnnnn files are normaly moved from Source\cur\nnnnnn. (5) When Source folder is opened again, moved mail appears again without strike-turu line, because "store +Flag \Deleted" is not requested. Because tested by Gmail IMAP with auto-expunging=On, "store +Flag \Deleted is not requested" is easily known. If "store +Flag \Deleted" is requested after Move, Gmail/Gmail IMAP immediately rmoves Gmail Label of the mail when auto-expunging=On. So, mail shouldn't appear at step (5) if "store +Flag \Deleted" is requedted by Tb.
No longer depends on: 856519
No longer depends on: 855950
As seen in bug 856519, if move source folder is maildirstore/IMAP/Offline-Use=Off folder, "uid xx store +Flag \Deleted" is issued regardless of result of file copy/file move. It looks for me; - "Move from maildirstore/IMAP/Offline-Use=On" is absolutely same as "Move from maildirstore/Local Folders or POP3 folder". So, after move IMAPSource/cur/nnnn to MaildirTarget/cur/nnnn, msgDBHdr of the mail is immediately removed from MsgDatabase. - When mail folder open, msgDBHdr for the UID is not found, then mail data is fetched from server pretty normally. I think following is needed. (1) If move from maildirstore/IMAP/Offline-Use=On to maildirstore, store Offline flag=false in msdDBHdr.flags first. => IMAP code won't access offline-store file(/cur/storeToken) (2) Move IMAP/cur/storeToken to Target/cur/storeToken(or new_storeToken with suffix if dup, or new unique hash value always). Clear msgDBHdr[stringPropery][storeToken]. (3) Issue "uid xx store +Flags \Deleted" Store IMAPDeleted=true in msgDBHdr.flags (4) If IMAP delete model == Move to trash or Remove immediately, delete msgDBHdr, remove from gDBView. If IMAP delete model == Just mark it as deleted, show with strike-thru line at Thread pane.
Blocks: 857003
No longer blocks: 857003
Blocks: 859011
No longer blocks: maildirblockers
Checked with trunk nightly. > Mozilla/5.0 (Windows NT 5.1; rv:39.0) Gecko/20100101 Thunderbird/39.0a1 Moved 3 mails in Mbox of Gmail IMAP(MaildirStore, Offline-Use=On) to FolderX of Local Folders(MaildirStore). 3 mails are normally copied to FolderX\cur directory of Local Folders, and are normally deleted from Mbox of Gmail IMAP. Problem of this bug is already resolved.
Status: NEW → RESOLVED
Closed: 10 years ago
Resolution: --- → FIXED
Status: RESOLVED → VERIFIED

I don't see a fixing bug number

Resolution: FIXED → WORKSFORME
You need to log in before you can comment on or make changes to this bug.