add: windowLocked = false; CommandUpdate_MsgCompose(); 
context: function GenericSendMessage( msgType ){	dump("GenericSendMessage from XUL\n");  dump("Identity = " + getCurrentIdentity() + "\n");    	if (msgCompose != null)	{	    var msgCompFields = msgCompose.compFields;	    if (msgCompFields)	    {			Recipients2CompFields(msgCompFields);			var subject = document.getElementById("msgSubject").value;			msgCompFields.SetSubject(subject);			dump("attachments = " + GenerateAttachmentsString() + "\n");			try {				msgCompFields.SetAttachments(GenerateAttachmentsString());			}			catch (ex) {				dump("failed to SetAttachments\n");			}					if (msgType == msgCompDeliverMode.Now || msgType == msgCompDeliverMode.Later)			{			  //Do we need to check the spelling?        if (prefs.GetBoolPref("mail.SpellCheckBeforeSend"))	        goDoCommand('cmd_spelling');			  				//Check if we have a subject, else ask user for confirmation				if (subject == "")				{     				if (commonDialogsService)    				{						var result = {value:0};        				if (commonDialogsService.Prompt(        					window,        					Bundle.GetStringFromName("subjectDlogTitle"),        					Bundle.GetStringFromName("subjectDlogMessage"),        					Bundle.GetStringFromName("defaultSubject"),        					result        					))        				{        					msgCompFields.SetSubject(result.value);        					var subjectInputElem = document.getElementById("msgSubject");        					subjectInputElem.value = result.value;        				}        				else        				  return;        			}    			}            				// Before sending the message, check what to do with HTML message, eventually abort.				action = DetermineHTMLAction();				if (action == msgCompSendFormat.AskUser)				{					var result = {action:msgCompSendFormat.PlainText, abort:false};					window.openDialog("chrome://messenger/content/messengercompose/askSendFormat.xul",										"askSendFormatDialog", "chrome,modal",										result);					if (result.abort)						return;					 action = result.action;				}				switch (action)				{					case msgCompSendFormat.PlainText:						msgCompFields.SetTheForcePlainText(true);						msgCompFields.SetUseMultipartAlternativeFlag(false);						break;					case msgCompSendFormat.HTML:						msgCompFields.SetTheForcePlainText(false);						msgCompFields.SetUseMultipartAlternativeFlag(false);						break;					case msgCompSendFormat.Both:						msgCompFields.SetTheForcePlainText(false);						msgCompFields.SetUseMultipartAlternativeFlag(true);						break;	    				   default: dump("\###SendMessage Error: invalid action value\n"); return;				}			}			try {				msgCompose.SendMsg(msgType, getCurrentIdentity(), null);				contentChanged = false;				msgCompose.bodyModified = false;			}			catch (ex) {				dump("failed to SendMsg\n");			}		}	}	else		dump("###SendMessage Error: composeAppCore is null!\n");}
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/10234/aebd5a3190b7846fef526561e3afc91186f642fe/MsgComposeCommands.js/buggy/mailnews/compose/resources/content/MsgComposeCommands.js