rem: if (("contentDocument" in iframe) && ("webProgress" in iframe)) 
add: if (getContentDocument(iframe) && ("webProgress" in iframe)) 
context: function syncOutputFrame(obj, nesting){    const nsIWebProgress = Components.interfaces.nsIWebProgress;    const WINDOW = nsIWebProgress.NOTIFY_STATE_WINDOW;    const NETWORK = nsIWebProgress.NOTIFY_STATE_NETWORK;    const ALL = nsIWebProgress.NOTIFY_ALL;    var iframe = obj.frame;    function tryAgain(nLevel)    {        syncOutputFrame(obj, nLevel);    };    if (typeof nesting != "number")        nesting = 0;    if (nesting > 10)    {        dd("Aborting syncOutputFrame, taken too many tries.");        return;    }    try    {        if (("contentDocument" in iframe) && ("webProgress" in iframe))        {            var url = obj.prefs["outputWindowURL"];            iframe.addProgressListener(client.progressListener, ALL);            iframe.loadURI(url);        }        else        {            setTimeout(tryAgain, 500, nesting + 1);        }    }    catch (ex)    {        dd("caught exception showing session view, will try again later.");        dd(dumpObjectTree(ex) + "\n");        setTimeout(tryAgain, 500, nesting + 1);    }}
meta: 10234	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/10234/a3e839fe5b35a608da653750f2126d4c87be6b9f/static.js/clean/extensions/irc/xul/content/static.js