add: var global = jscontext.globalObject.getWrappedValue(); ddd("jsIContext tag:"+jscontext.tag+(jscontext.isValid?" - isValid\n":" - NOT valid\n"));  if (global) { var document = global.document; if (document) { ddd("global document.location: "+document.location+"\n"); } else { ddd("global without document\n"); ddd("global type: "+typeof(global)+"\n"); dumpProperties("global properties", global); dumpInterfaces("global interfaces", global); } } else ddd("no global object\n");   
context:         jsd.enumerateContexts( {enumerateContext: function(jscontext)        {                var global = jscontext.globalObject.getWrappedValue();                ddd("jsIContext tag:"+jscontext.tag+(jscontext.isValid?" - isValid\n":" - NOT valid\n"));                //dumpProperties("global object:\n", global);                if (global)                {                    var document = global.document;                    if (document)                    {                        ddd("global document.location: "+document.location+"\n");                    }                    else                        ddd("global without document\n");                    ddd("global type: "+typeof(global)+"\n");                }                else                    ddd("no global object\n");                ddd("\n");                try                {                    if (jscontext.privateData)                    {                        dumpProperties("jscontext.privateData", jscontext.privateData);                        dumpInterfaces("jscontext.privateData", jscontext.privateData);                    }                }                catch(e)                {                    ddd("jscontext dump FAILED "+e+"\n");                }                /*                 * jsdIContext has jsdIEphemeral, nsISupports, jsdIContext                 * jsdIContext.wrappedContext has nsISupports and nsITimerCallback, nothing interesting                 * jsdIContext.JSContext is undefined                 */                /*                var nsITimerCallback = Components.interfaces["nsITimerCallback"];                if (context instanceof nsITimerCallback)                {                    var asTimer = context.QueryInterface(nsITimerCallback);                    dumpProperties(nsITimerCallback, asTimer );                }                ddd("\n\n");*/        }});
meta: 7450	/local1/tlutelli/issta_data/temp/all_js/javascript/2007_temp/2007/7450/c5f013dccda5f25ec6c3894c73898353bae36759/firebug-service.js/buggy/extension/components/firebug-service.js