WebView programming & “Previous frame inner to this frame (gdb could not unwind past this frame)”

I wasted almost 2 weeks to figure out what the heck “Previous frame inner to this frame (gdb could not unwind past this frame)” means.

I stil don’t know what it really means, but found out when it happens as far as WebView is concerned.
Don’t set any breakpoint here.

+ (BOOL)isSelectorExcludedFromWebScript:(SEL)selector 
{
    NSLog(@"%@ received %@ for '%@'", self, NSStringFromSelector(_cmd), NSStringFromSelector(selector));
    if (selector == @selector(doOutputToLog:)
	|| selector == @selector(changeJavaScriptText:)
	|| selector == @selector(reportSharedValue)) {
        return NO;
    }
    return YES;
}

When it stops in isSelectorExcludedFromWebScript method, somehow JavaScript/HTML loaded on an WebView still seems to be evaluated, and it seems to make previous stack, or frame, invalid. However, it is stopped in a previous stack, because a breakpoint is set in the method. Then, instances in previous are still referenced.
( I guess “frame” means “stack”. )

So, to debug codes like the one above, using NSLog() is better.

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: