[webkit-help] Embedding WebKit - virtual functions not get instantiated properly.
Alex MacCaw
info at eribium.org
Tue Jan 12 15:38:02 PST 2010
Very odd error... I've been trying to embed WebKit into my own app.
Getting this error:
Program received signal EXC_BAD_ACCESS, Could not access memory.
Reason: KERN_PROTECTION_FAILURE at address: 0x00000008
0x01e8c8b0 in WebCore::FrameView::invalidateRect (this=0x475ddb0,
rect=@0xbfffdf78) at
/Users/Alex/Downloads/WebKit-r52751/WebCore/page/FrameView.cpp:295
295 hostWindow()->repaint(rect, true);
On further investigation, it seems none of the virtual methods (from
HostWindow) exist on Chrome.
So, an example:
WebCore::Page *page = new WebCore::Page(...);
page->chrome() // Instance of (WebCore::Chrome*)
page->chrome()->focus() // Works
page->chrome()->scrollbarsModeDidChange(); // Triggers null pointer error
But if we create our own Chrome instance:
const WebCore::Chrome *chrome = new WebCore::Chrome(page, new
WebCore::EmptyChromeClient());
chrome->scrollbarsModeDidChange(); // Works fine
Any idea why the virtual functions don't exist with the first example:
--
http://www.leadthinking.com | http://socialmod.com
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.webkit.org/pipermail/webkit-help/attachments/20100112/05122ee1/attachment.html>
More information about the webkit-help
mailing list