 if (frame.callingFrame) { while(frame.callingFrame) frame = frame.callingFrame; var debuggr = this.findDebugger(frame); if (debuggr) return debuggr; } if (fbs.DBG_ERRORS) fbs.diagnoseFindDebugger(frame, win); 
    findDebugger: function(frame)    {        if (debuggers.length < 1)            return;        var win = getFrameWindow(frame);        if (!win)            return;        // XXXjjb TODO cache debuggr for win, add API to debuggr to set context w/o call to tabWatcher        for (var i = 0; i < debuggers.length; ++i)        {            try            {                var debuggr = debuggers[i];                if (debuggr.supportsWindow(win))                    return debuggr;            }            catch (exc) {  ERROR("firebug-service findDebugger: "+exc);}        }    },
2454	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/2454/48f2d76d64656705d283f18fc73c669c615f95f0/firebug-service.js/clean/extension/components/firebug-service.js