[webkit-dev] Inspector module

Tomasz Morawski t.morawski at samsung.com
Thu Oct 7 01:54:16 PDT 2010


Hi,
I have a few questions about inspector/JS debugging feature. I am trying 
to get a JS frame after
pausing script execution due to breakpoint reach. If I understand good 
the „pausedScript” event  that  is send to my InspectorClient class via 
the sendMessageToFrontend function should has JS frame that I looking for.

{"type":"event","event":"pausedScript","data":{"callFrames":null}}

But the callFrames field is null. The “callFrames” field is filed by an 
InspectorDebuggerAgent::currentCallFrames() function.  Could you tell me 
what is an InjectedScriptHost class what is the purpose of this class 
and how I should use this object to get a callFrame? Maybe I have 
forgotten to dispatch some commands?
What commands should be dispatched via an InspectorBackendDispatcher 
object to get a callFrame after JS execution pause?

For test purpose I have written a code:

InspectorDebuggerAgent::currentCallFrames()
{
     JavaScriptCallFrame* frame = 
ScriptDebugServer::shared().currentCallFrame();
     if (!frame)
     {
         fprintf(stderr, "source: %d\n", frame->sourceID());
         fprintf(stderr, "line:   %d\n", frame->line());
         fprintf(stderr, "function:   %s\n", 
frame->functionName().ascii().data());

         JSC::JSGlobalObject *gobject = frame->dynamicGlobalObject();
         JSC::ExecState* exec = gobject->JSGlobalObject::globalExec();
         if (exec)
             fprintf(stderr, "function parameters: %d \n", 
exec->argumentCount());
     }

But exec->argumentCount returns invalid parameters count.

Best regards,
Tomasz Morawski 	


More information about the webkit-dev mailing list