Created attachment 323156 [details]
both normal and full backtraces
###!!! ASSERTION: RemoveCurrentDraftMessage can't get draft id: '(NS_SUCCEEDED(rv) && (!curDraftIdURL.IsEmpty()))', file /Users/skywalker/Desktop/Mozilla/cvs/mozilla/mailnews/compose/src/nsMsgCompose.cpp, line 393
The assertion fires when I open a message compose window (or reply to a message), not typing anything, and shifting focus to do something else. After awhile, the assertion will be caught in Terminal.
Gary, could this be related to multiple drafts being saved?
Possibly - though I can't say for sure. Maybe bienvenu knows what this assertion might mean?
perhaps comment 0 sheds light on these other bugs?
I'm also seeing this pretty reliably in Beta (v10) after leaving a compose window up for a few minutes.
The code where this happens is:
336 rv = m_compFields->GetDraftId(getter_Copies(curDraftIdURL));
337 NS_ASSERTION((NS_SUCCEEDED(rv) && (!curDraftIdURL.IsEmpty())), "RemoveCurrentDraftMessage can't get draft id");
339 // Skip if no draft id (probably a new draft msg).
340 if (NS_SUCCEEDED(rv) && mMsgSend && !curDraftIdURL.IsEmpty())
That is, the comment claims that new drafts will have curDraftIdURL.IsEmpty() and it behaves correctly. This is no place for an assertion.
I can get this simply by composing a new message, and trying to save it.
I say we just delete the assertion. It was added with the code for the entire method in Bug 319818.
Created attachment 669807 [details] [diff] [review]
Remove the assertion
Comment on attachment 669807 [details] [diff] [review]
Remove the assertion
Review of attachment 669807 [details] [diff] [review]:
There's lots of silent discarding of nsresults in this method, but I'm happy to leave that to another bug unless you want to take it on.
(In reply to Irving Reid (:irving) from comment #7)
> There's lots of silent discarding of nsresults in this method, but I'm happy
> to leave that to another bug unless you want to take it on.
I'm starting to figure out that that is a hot issue for you. For this bug though, I simply encountered the Assertion myself in some code work I was doing, analyzed it enough to figure out it was a false positive, then decided I would go ahead and do that narrow fix. I'm reluctant to do much more at the moment.
Checked in https://hg.mozilla.org/comm-central/rev/82d555dbf346