User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:220.127.116.11) Gecko/20070515 Firefox/18.104.22.168 XPCOMViewer/0.9.5 Build Identifier: version 22.214.171.124 (20070604) In file MsgComposeCommands.js, function GenericSendMessage an event 'compose-send-message' is dispatched (line 1872) for registered listeners. This event is for doing any pre-sending work and its especially useful for extensions. Such listener (an extension) might want to know what the msgType is, for example, to see if GenericSendMessage was called because the Send button was pressed or because the the auto save timer expired. However, the variable gAutoSaving is set only after firing the the event, thus the listener cannot know that information. Possible solutions: 1. set gAutoSaving before firing the 'compose-send-message' event. 2. Better: save the msgType argument to a local variable immediately when entering the GenericSendMessage function. The listener can access this variable using the exception object. By accessing msgType, all message types are known to the listeners. Reproducible: Always Steps to Reproduce: 1. Activate autosave. 2. Write an extension that listen to 'compose-send-message' event. 3. Try to determine what scenario fired the event (pressing send, later, save, autosave).
This is definitely an issue for extensions like Enigmail and AutoZipAttachments. I'll try to write a patch for this