Closed Bug 379175 Opened 18 years ago Closed 18 years ago

send unsent messages doesn't work when used during same session as composition

Categories

(Thunderbird :: Message Compose Window, defect)

x86
Linux
defect
Not set
normal

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: mkmelin, Assigned: Bienvenu)

References

Details

(Keywords: regression)

Attachments

(1 file)

Compose a mail and hit send later, then try File > Send Unsent Messages. This doesn't work anymore on trunk - 2.0 works fine. The Error Console doesn't show anything interesting. If you restart and are asked to send on startup, you can send the mail successfully. Also after restart, the Send Unsent Messages menu item works fine. Seen on Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9a5pre) Gecko/20070428 Thunderbird/3.0a1 ID:2007042803 [cairo]
sigh, this works on Windows - I'll try Mac next. Do you have access to a debugger and debug build?
works on the mac too... this sounds like maybe it's a file locking issue - perhaps the Unsent Messages folder is locked after writing the message to it, so we can't open it to read the message from it to send it...though I thought Windows was at least as strict as Linux w.r.t. file locking, and I thought Mac and Linux would be fairly similar. If you select the unsent messages folder before trying to send unsent messages, does that work?
(In reply to comment #3) > If you select the unsent messages folder before trying to send unsent messages, > does that work? Yes, then it works. I usually build with debug disabled, but I could make a debug build to see if it shows anything. I've got gdb, but I'm not very familiar it.
Blocks: 33451
If you do a debug build, we might get a debug warning printed out that would help diagnose the error. It's interesting that selecting the unsent messages folder fixes the problem - I'm not sure what that means...Before you select the Unsent Messages folder, if you ls -l Unsent Messages and Unsent Messages.msf, do they have the expected sizes? I.e., unsent messages should be the size of the message to be sent, and the .msf file should be slightly larger than the .msf file for an empty folder...
Assignee: mscott → bienvenu
Ah, it turns out that when I invoke Send Later, the Unsent Messages.msf file is removed completely - selecting the folder helps since that regenerates it.
This is what the debug output says: [Sending later] SendMessageLater from XUL GenericSendMessage from XUL Identity = [nsIMsgIdentity: id9] DetermineHTMLAction: preferFormat = 0, noHtmlRecipients are magnus.melin@24.fi ++WEBSHELL 0xa526f90 == 7 ++DOMWINDOW == 30 ++DOMWINDOW == 31 WARNING: empty langgroup: file /opt/CVSROOT/mozilla/gfx/thebes/src/gfxFont.cpp, line 593 WARNING: empty langgroup: file /opt/CVSROOT/mozilla/gfx/thebes/src/gfxFont.cpp, line 593 WARNING: empty langgroup: file /opt/CVSROOT/mozilla/gfx/thebes/src/gfxFont.cpp, line 593 WARNING: empty langgroup: file /opt/CVSROOT/mozilla/gfx/thebes/src/gfxFont.cpp, line 593 WARNING: empty langgroup: file /opt/CVSROOT/mozilla/gfx/thebes/src/gfxFont.cpp, line 593 WARNING: empty langgroup: file /opt/CVSROOT/mozilla/gfx/thebes/src/gfxFont.cpp, line 593 WARNING: empty langgroup: file /opt/CVSROOT/mozilla/gfx/thebes/src/gfxFont.cpp, line 593 --WEBSHELL 0xa526f90 == 6 ++WEBSHELL 0xa527d98 == 7 ++DOMWINDOW == 32 ++DOMWINDOW == 33 WARNING: empty langgroup: file /opt/CVSROOT/mozilla/gfx/thebes/src/gfxFont.cpp, line 593 WARNING: empty langgroup: file /opt/CVSROOT/mozilla/gfx/thebes/src/gfxFont.cpp, line 593 WARNING: empty langgroup: file /opt/CVSROOT/mozilla/gfx/thebes/src/gfxFont.cpp, line 593 Trying to position a sizeless window; caller should have called sizeToContent() or sizeTo(). See bug 75649. CopyListener::OnStartCopy() nsMsgComposeSendListener::OnStartCopy() CopyListener: SUCCESSFUL ON THE COPY OPERATION! --WEBSHELL 0xa527d98 == 6 nsMsgComposeSendListener: Success on the message copy operation! WARNING: recurring into frame construction: 'mPresContext->mLayoutPhaseCount[eLayoutPhase_FrameC] == 0', file ../../dist/include/layout/nsPresContext.h, line 924 WARNING: NS_ENSURE_TRUE(newRoot) failed: file /opt/CVSROOT/mozilla/content/base/src/nsRange.cpp, line 614 WARNING: NS_ENSURE_TRUE(NS_SUCCEEDED(rv)) failed: file /opt/CVSROOT/mozilla/extensions/spellcheck/src/mozInlineSpellChecker.cpp, line 1026 WARNING: NS_ENSURE_TRUE(NS_SUCCEEDED(rv)) failed: file /opt/CVSROOT/mozilla/extensions/spellcheck/src/mozInlineSpellChecker.cpp, line 308 WARNING: NS_ENSURE_TRUE(NS_SUCCEEDED(rv)) failed: file /opt/CVSROOT/mozilla/extensions/spellcheck/src/mozInlineSpellChecker.cpp, line 1408 --DOMWINDOW == 32 --DOMWINDOW == 31 THE CLEANUP ROUTINE FOR nsMsgComposeAndSend() WAS CALLED --DOMWINDOW == 30 --DOMWINDOW == 29 --DOMWINDOW == 28 --DOMWINDOW == 27 WARNING: empty langgroup: file /opt/CVSROOT/mozilla/gfx/thebes/src/gfxFont.cpp, line 593 WARNING: empty langgroup: file /opt/CVSROOT/mozilla/gfx/thebes/src/gfxFont.cpp, line 593 WARNING: empty langgroup: file /opt/CVSROOT/mozilla/gfx/thebes/src/gfxFont.cpp, line 593 WARNING: Key 'key_openFileMessage' of menu item 'Open Saved Message...' could not be found: file /opt/CVSROOT/mozilla/layout/xul/base/src/nsMenuFrame.cpp, line 1522 WARNING: empty langgroup: file /opt/CVSROOT/mozilla/gfx/thebes/src/gfxFont.cpp, line 593 We successfully obtained a nsIMsgSendLater interface.... [When selecting the folder] WARNING: NS_ENSURE_TRUE(NS_SUCCEEDED(rv) && window) failed: file /opt/CVSROOT/mozilla/content/xul/document/src/nsXULCommandDispatcher.cpp, line 174 failed to get view & sort values. ex = [Exception... "Component returned failure code: 0x80550006 [nsIMsgFolder.getMsgDatabase]" nsresult: "0x80550006 (<unknown>)" location: "JS frame :: chrome://messenger/content/commandglue.js :: FolderPaneSelectionChange :: line 883" data: no] WARNING: NS_ENSURE_TRUE(NS_SUCCEEDED(rv)) failed: file /opt/CVSROOT/mozilla/mailnews/db/msgdb/src/nsMsgDatabase.cpp, line 154 Error loading with many headers to download: [Exception... "Component returned failure code: 0xc1f30001 (NS_ERROR_NOT_INITIALIZED) [nsIMsgFolder.updateFolder]" nsresult: "0xc1f30001 (NS_ERROR_NOT_INITIALIZED)" location: "JS frame :: chrome://messenger/content/commandglue.js :: ChangeFolderByURI :: line 193" data: no]
Standard8 found that the db is out of date, and getting removed here: http://pastebin.mozilla.org/35267 However, we would never get to this code if mDatabase was set for the folder. Also, Normally we would be setting the summary valid here: sMsgLocalMailFolder::OnCopyCompleted But since mDatabase must be null, we don't hit that code. The question is, why is mDatabase null?
Attached patch proposed fixSplinter Review
a big thanks to Mark for helping me with this bug!
Attachment #263527 - Flags: superreview?(mscott)
Attachment #263527 - Flags: superreview?(mscott) → superreview+
fixed on trunk (I think) - please try tomorrow's build
Status: NEW → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
Works fine now! Thanks! VERIFIED on Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.9a5pre) Gecko/20070503 Thunderbird/3.0a1 ID:2007050303 [cairo]
Status: RESOLVED → VERIFIED
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: