From 31c2746d1110f20a30f4fba459e256d0a1e193d0 Mon Sep 17 00:00:00 2001 From: "naving%netscape.com" Date: Thu, 12 Sep 2002 06:22:55 +0000 Subject: [PATCH] 166675 r=cavin sr=bienvenu Do not call canGetFileMessage on bogus folder 72322 r=cavin sr=bienvenu Make imap deletes (move to trash) not fail if user hits delete, delete... quickly. --- mailnews/imap/src/nsImapMailFolder.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/mailnews/imap/src/nsImapMailFolder.cpp b/mailnews/imap/src/nsImapMailFolder.cpp index df3dfb9bb52f..d6ae295a28b2 100644 --- a/mailnews/imap/src/nsImapMailFolder.cpp +++ b/mailnews/imap/src/nsImapMailFolder.cpp @@ -2028,7 +2028,10 @@ NS_IMETHODIMP nsImapMailFolder::DeleteMessages(nsISupportsArray *messages, rv = QueryInterface(NS_GET_IID(nsIMsgFolder), getter_AddRefs(srcFolder)); - rv = trashFolder->CopyMessages(srcFolder, messages, PR_TRUE, msgWindow, listener,PR_FALSE, allowUndo); + + nsCOMPtr copyService = do_GetService(NS_MSGCOPYSERVICE_CONTRACTID, &rv); + NS_ENSURE_SUCCESS(rv, rv); + rv = copyService->CopyMessages(srcFolder, messages, trashFolder, PR_TRUE, listener, msgWindow, allowUndo); } } return rv; @@ -3328,7 +3331,8 @@ nsresult nsImapMailFolder::MoveIncorporatedMessage(nsIMsgDBHdr *mailHdr, PRBool canFileMessages = PR_TRUE; nsCOMPtr parentFolder; destIFolder->GetParent(getter_AddRefs(parentFolder)); - destIFolder->GetCanFileMessages(&canFileMessages); + if (parentFolder) + destIFolder->GetCanFileMessages(&canFileMessages); if (!parentFolder || !canFileMessages) { filter->SetEnabled(PR_FALSE); @@ -6165,6 +6169,7 @@ nsresult nsImapMailFolder::CopyMessagesOffline(nsIMsgFolder* srcFolder, if (NS_SUCCEEDED(rv) && isMove) srcFolder->NotifyFolderEvent(mDeleteOrMoveMsgCompletedAtom); + return rv; }