rem: aFI.uri = makeURI(aURL, docCharset); 
add: aFI.uri = makeURI(aURL, aURLCharset); 
context: function initFileInfo(aFI, aURL, aDocument, aContentType, aContentDisposition){  var docCharset = (aDocument ? aDocument.characterSet : null);  try {    // Get an nsIURI object from aURL if possible:    try {      aFI.uri = makeURI(aURL, docCharset);      // Assuming nsiUri is valid, calling QueryInterface(...) on it will      // populate extra object fields (eg filename and file extension).      var url = aFI.uri.QueryInterface(Components.interfaces.nsIURL);      aFI.fileExt = url.fileExtension;    } catch (e) {    }    // Get the default filename:    aFI.fileName = getDefaultFileName((aFI.suggestedFileName || aFI.fileName),                                      aFI.uri, aDocument, aContentDisposition);    // If aFI.fileExt is still blank, consider: aFI.suggestedFileName is supplied    // if saveURL(...) was the original caller (hence both aContentType and    // aDocument are blank). If they were saving a link to a website then make    // the extension .htm .    if (!aFI.fileExt && !aDocument && !aContentType && (/^http(s?):\/\//i.test(aURL))) {      aFI.fileExt = "htm";      aFI.fileBaseName = aFI.fileName;    } else {      aFI.fileExt = getDefaultExtension(aFI.fileName, aFI.uri, aContentType);      aFI.fileBaseName = getFileBaseName(aFI.fileName, aFI.fileExt);    }  } catch (e) {  }}
meta: 9421	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/9421/a6e0413a1f3cc622410c42e46b28b2b83b9472a4/contentAreaUtils.js/buggy/toolkit/content/contentAreaUtils.js