From 16565491efa8636025154a4f0a82ee7da895cb44 Mon Sep 17 00:00:00 2001 From: "bienvenu%nventure.com" Date: Wed, 7 Apr 2004 15:11:51 +0000 Subject: [PATCH] when filter after the fact filter sets a label on a local message, it's not stored in the mailbox, only the summary file sr=mscott a=chofmann 226952 --- mailnews/base/util/nsMsgDBFolder.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/mailnews/base/util/nsMsgDBFolder.cpp b/mailnews/base/util/nsMsgDBFolder.cpp index 31ac77e9fc62..df4fe4c4a1ea 100644 --- a/mailnews/base/util/nsMsgDBFolder.cpp +++ b/mailnews/base/util/nsMsgDBFolder.cpp @@ -3848,6 +3848,9 @@ nsMsgDBFolder::MarkMessagesFlagged(nsISupportsArray *messages, PRBool markFlagge NS_IMETHODIMP nsMsgDBFolder::SetLabelForMessages(nsISupportsArray *aMessages, nsMsgLabelValue aLabel) { + GetDatabase(nsnull); + if (mDatabase) + { PRUint32 count; NS_ENSURE_ARG(aMessages); nsresult rv = aMessages->Count(&count); @@ -3855,11 +3858,13 @@ nsMsgDBFolder::SetLabelForMessages(nsISupportsArray *aMessages, nsMsgLabelValue for(PRUint32 i = 0; i < count; i++) { + nsMsgKey msgKey; nsCOMPtr message = do_QueryElementAt(aMessages, i, &rv); NS_ENSURE_SUCCESS(rv, rv); - - rv = message->SetLabel(aLabel); + (void) message->GetMessageKey(&msgKey); + rv = mDatabase->SetLabel(msgKey, aLabel); NS_ENSURE_SUCCESS(rv, rv); + } } return NS_OK; }