Take the 2-minute tour ×

I'm referring to RemoteObjects specified in the Chrome Debugging API 1.0 documentation.


I'm trying to associate subsequent call frames to previous call frames.

Let's say: I set breakpoints on the functions a,b,c,d. I run the following: a(b(c(d())));

The execution pauses, and I receive the Debugger.paused notifications for each function and resume each time. On each Debugger.paused notification, I receive an array of CallFrames. However, the objectIds in each CallFrame object and its properties are all unique. As such, I am unable to compare them by their id.

Anyone knows some way to do this?

The Runtime.callFunctionOn and Runtime.evaluate allow me to execute code on single objects based on their id, however, it doesn't seem to allow me to execute code on multiple objects so I can't do something like check CallFrameA.objectX === CallFrameB.objectY (for example).

I'm also not sure if retrieving the objects through the API and doing a deep equality check is a good idea. One way would be doing a recursive Runtime.getProperties call and checking equality of all the properties except for the unique objectId.

share|improve this question
add comment

1 Answer

  1. I suggest you file an issue against the Chromium or WebKit to support unique ids for objects – a thing implemented V8's native debug protocol.

  2. Actually you can provide several ids to Runtime.callFunctionOn via its arguments parameter.

share|improve this answer
Thank you for pointing out that I can pass multiple arguments in the Runtime.callFunctionOn method. I missed that, somehow. I'm trying that out now and will see how far I go with that. –  sirhc Oct 18 '12 at 21:56
add comment

Your Answer


