rem: !(gViewAllHeaders || gShowReferences || gDBView.msgFolder.server.type == "nntp")) 
add: !(gViewAllHeaders || gShowReferences || (gDBView.msgFolder && gDBView.msgFolder.server.type == "nntp"))) 
context: function UpdateMessageHeaders(){  // iterate over each header we received and see if we have a matching entry in each  // header view table...  var headerName;  // Remove the height attr so that it redraws correctly. Works around a problem that  // attachment-splitter causes if it's moved high enough to affect the header box:  document.getElementById('msgHeaderView').removeAttribute('height');  for (headerName in currentHeaderData)  {    var headerField = currentHeaderData[headerName];    var headerEntry = null;    if (headerName == "subject")    {      try {        if (gDBView.keyForFirstSelectedMessage == nsMsgKey_None)        {          var folder = null;          if (gCurrentFolderUri)            folder = RDF.GetResource(gCurrentFolderUri).QueryInterface(Components.interfaces.nsIMsgFolder);          setTitleFromFolder(folder, headerField.headerValue);        }      } catch (ex) {}    }    if (gCollapsedHeaderViewMode && !gBuiltCollapsedView)    {      if (headerName in gCollapsedHeaderView)      headerEntry = gCollapsedHeaderView[headerName];    }    else if (!gCollapsedHeaderViewMode && !gBuiltExpandedView)    {      if (headerName in gExpandedHeaderView)       headerEntry = gExpandedHeaderView[headerName];      if (!headerEntry && gViewAllHeaders)      {        // for view all headers, if we don't have a header field for this value....cheat and create one....then        // fill in a headerEntry        if (headerName == "message-id" || headerName == "in-reply-to")        {          var messageIdEntry = {name:headerName, outputFunction:OutputMessageIds};          gExpandedHeaderView[headerName] = new createHeaderEntry('expanded', messageIdEntry);        }        else        {          gExpandedHeaderView[headerName] = new createNewHeaderView(headerName,                                                                    currentHeaderData[headerName].headerName + ':');        }        headerEntry = gExpandedHeaderView[headerName];      }    } // if we are in expanded view....    if (headerEntry)    {      if (headerName == "references" &&          !(gViewAllHeaders || gShowReferences || gDBView.msgFolder.server.type == "nntp"))      {        // hide references header if view all headers mode isn't selected, the pref show references is        // deactivated and the currently displayed message isn't a newsgroup posting        headerEntry.valid = false;      }      else      {        headerEntry.outputFunction(headerEntry, headerField.headerValue);        headerEntry.valid = true;      }    }  }  if (gCollapsedHeaderViewMode)   gBuiltCollapsedView = true;  else   gBuiltExpandedView = true;  // now update the view to make sure the right elements are visible  updateHeaderViews();  if ("FinishEmailProcessing" in this)    FinishEmailProcessing();}
meta: 9421	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/9421/07ee494804c68ea95289bca1d8392406ba423eaf/msgHdrViewOverlay.js/clean/mail/base/content/msgHdrViewOverlay.js