Vincent Han
unread,Nov 10, 2010, 3:30:07 AM11/10/10Sign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to v8-users
"scope" and some other protocol occur forced termination in Android.
My analysis is like below.
First of all, a major cause is "JavaScriptFrameIterator
frame_it(id);"
in Runtime_GetScopeCount function.
The reason of above is "id" after doing below.
- StackFrame::Id id = UnwrapFrameId(wrapped_id);
A parameter of Runtime_GetScopeCount function is "args".
→ args[0]: this.break_id_, args[1]: this.frameId() (in Mirror-
debug.js)
When args[1] is zero(frameId is zero), wrapped_id is zero.
- CONVERT_CHECKED(Smi, wrapped_id, args[1]);
Then id become zero after UnwrapFrameId(wrapped_id).
I think above routine got some problem.
Now, look at Runtime_GetFrameDetails function.
There is id got some values.
Then, make frame_id using id through WrapFrameId function.
- frame_id value is zero.
And set frame_id to details[kFrameDetailsFrameIdIndex].
I thiink args[1] of Runtime_GetScopeCount using that frame_id(zero).
Is it a right processing?
Or some protocols have restrictions before requesting.
Please help me.