rem: var lowerCaseHeaderName = headerNames[index].toLowerCase(); 
add: var lowerCaseHeaderName = header.headerName.toLowerCase(); 
context:     processHeaders: function(headerNames, headerValues, numHeaders, dontCollectAddress)    {      this.onStartHeaders();       var index = 0;      // process each header      while (index < numHeaders)      {        // for consistancy sake, let's force all header names to be lower case so        // we don't have to worry about looking for: Cc and CC, etc.        var lowerCaseHeaderName = headerNames[index].toLowerCase();        // if we have an x-mailer string, put it in the user-agent slot which we know how to handle        // already.         if (lowerCaseHeaderName == "x-mailer")          lowerCaseHeaderName = "user-agent";                   var foo = new Object;                foo.headerValue = headerValues[index];        foo.headerName = headerNames[index];        // according to RFC 2822, certain headers        // can occur "unlimited" times        if (lowerCaseHeaderName in currentHeaderData)        {          // sometimes, you can have multiple To or Cc lines....          // in this case, we want to append these headers into one.          if (lowerCaseHeaderName == 'to' || lowerCaseHeaderName == 'cc')            currentHeaderData[lowerCaseHeaderName].headerValue = currentHeaderData[lowerCaseHeaderName].headerValue + ',' + foo.headerValue;          else {              // use the index to create a unique header name like:            // received5, received6, etc            currentHeaderData[lowerCaseHeaderName + index] = foo;          }        }        else         currentHeaderData[lowerCaseHeaderName] = foo;        if (lowerCaseHeaderName == "from")        {          if (foo.headerValue && abAddressCollector) {            if ((gCollectIncoming && !dontCollectAddress) ||                 (gCollectNewsgroup && dontCollectAddress))            {              gCollectAddress = foo.headerValue;              // collect, and add card if doesn't exist              gCollectAddressTimer = setTimeout('abAddressCollector.collectUnicodeAddress(gCollectAddress, true);', 2000);            }            else if (gCollectOutgoing)             {              // collect, but only update existing cards              gCollectAddress = foo.headerValue;              gCollectAddressTimer = setTimeout('abAddressCollector.collectUnicodeAddress(gCollectAddress, false);', 2000);            }          }         }               index++;      }      this.onEndHeaders();    },
meta: 8395	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/8395/ea0646f2114300e3cbda2f83e83a212bbd504ee9/msgHdrViewOverlay.js/buggy/mail/base/content/msgHdrViewOverlay.js