rem: dd ("source loaded " + url + ", " + status); 
context: function st_oncomplete (data, url, status){    dd ("source loaded " + url + ", " + status);        var sourceText = this;        function callall (status)    {        while (sourceText.loadCallbacks.length)        {            var cb = sourceText.loadCallbacks.pop();            cb (status);        }        delete sourceText.loadCallbacks;    };                delete this.isLoading;        if (status != Components.results.NS_OK)    {        dd ("loadSource failed with status " + status + ", " + url);        callall (status);        return;    }    if (!ASSERT(data, "loadSource succeeded but got no data"))        data = "";    var matchResult;        // Check before split because xml declarlation may contain newline.    if (data.substring(0, 5) == "<?xml" && !("charset" in this))    {        var s = data.substring(6, data.indexOf("?>"));        matchResult = s.match(/encoding\s*=\s*([\"\'])([^\"\'\s]+)\1/i);        if (matchResult)            this.charset = matchResult[2];    }        var ary = data.split(/\r\n|\n|\r/m);    var charsetRE =        /meta\s+http-equiv\s+content-type\s+charset=([^\;\"\'\s]+)/i;    for (var i = 0; i < ary.length; ++i)    {        /*         * The replace() strips control characters, we leave the tabs in         * so we can expand them to a per-file width before actually         * displaying them.         */        ary[i] = ary[i].replace(/[\x00-\x08]|[\x0A-\x1F]/g, "?");        if (!("charset" in this))        {            matchResult = ary[i].match(charsetRE);            if (matchResult)                this.charset = matchResult[1];        }    }    this.lines = ary;    ary = ary[0].match (/tab-?width*:\s*(\d+)/i);    if (ary)        this.tabWidth = ary[1];        if ("scriptInstance" in this)    {        this.scriptInstance.guessFunctionNames(sourceText);        this.lineMap = this.scriptInstance.lineMap;    }    else    {        this.lineMap = new Array();        for (var fbp in console.fbreaks)        {            var fbreak = console.fbreaks[fbp];            if (fbreak.url == this.url)                arrayOrFlag (this.lineMap, fbreak.lineNumber - 1, LINE_FBREAK);        }    }    this.isLoaded = true;    dispatch ("hook-source-load-complete",              { sourceText: sourceText, status: status });    callall(status);}
meta: 9421	/local1/tlutelli/issta_data/temp/all_js/javascript/2006_temp/2006/9421/45c353e9aa1e6f3520b887db284ca8c0d9f4389f/venkman-static.js/clean/extensions/venkman/resources/content/venkman-static.js