rem: if (!client.eventPump.getHook("uc-hook")) { client.eventPump.addHook ([{type: "parseddata", set: "server"}], ucConvertIncomingMessage, "uc-hook"); } 
context: function setCharset (charset){    client.CHARSET = charset;        if (!charset)    {        delete client.ucConverter;        client.eventPump.removeHookByName("uc-hook");        return true;    }        var ex;        try    {                if (!("ucConverter" in client))        {            const UC_CTRID = "@mozilla.org/intl/scriptableunicodeconverter";            const nsIUnicodeConverter =                 Components.interfaces.nsIScriptableUnicodeConverter;            client.ucConverter =                Components.classes[UC_CTRID].getService(nsIUnicodeConverter);        }                client.ucConverter.charset = charset;                if (!client.eventPump.getHook("uc-hook"))        {            client.eventPump.addHook ([{type: "parseddata", set: "server"}],                                      ucConvertIncomingMessage, "uc-hook");        }    }    catch (ex)    {        dd ("Caught exception setting charset to " + charset + "\n" + ex);        delete client.ucConverter;        client.CHARSET = "";        client.eventPump.removeHookByName("uc-hook");        return false;    }    return true;}
meta: 1622	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/1622/ae836a2751427b1d5808e7af3885a21e1326d7cc/static.js/clean/xul/content/static.js