rem: this.contentType = getMIMEInfoForExtension(ext).MIMEType; 
add: var mimeInfo = getMIMEInfoForExtension(ext); if (mimeInfo) this.contentType = mimeInfo.MIMEType; 
context:   onStopRequest: function (aRequest, aContext, aStatus) {    try {      if (aStatus == 0) { // NS_BINDING_SUCCEEDED, so there's something there        var linkChecker = aRequest.QueryInterface(Components.interfaces.nsIURIChecker);        var channel = linkChecker.baseRequest.QueryInterface(Components.interfaces.nsIChannel);        this.contentType = channel.contentType;        try {          var httpChannel = channel.QueryInterface(Components.interfaces.nsIHttpChannel);          this.mContentDisposition = httpChannel.getResponseHeader("content-disposition");        }        catch (e) {        }      }      else {        var bundle = getStringBundle();        var errorTitle = bundle.GetStringFromName("saveLinkErrorTitle");        var errorMsg = bundle.GetStringFromName("saveLinkErrorMsg");        const promptService = Components.classes["@mozilla.org/embedcomp/prompt-service;1"].getService(Components.interfaces.nsIPromptService);        promptService.alert(this.mData.window, errorTitle, errorMsg);        return;      }    }    catch (e) {      if (this.mData.document) {        this.contentType = this.mData.document.contentType;      } else {        try {          var url = this.uri.QueryInterface(Components.interfaces.nsIURL);          var ext = url.fileExtension;          if (ext) {            this.contentType = getMIMEInfoForExtension(ext).MIMEType;          }        }        catch (e) {          // Not much we can do here.  Give up.        }      }    }    this.mCallback(this, this.mData);  },
meta: 9421	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/9421/2e0fabd5898012fcb742505b1c666dfa776c96dc/contentAreaUtils.js/clean/xpfe/communicator/resources/content/contentAreaUtils.js