Bug 20110

Summary: The GTK port wrongly assumes that the web view widget is always realized.
Product: WebKit Reporter: David Hansen <david.hansen>
Component: WebKitGTKAssignee: Nobody <webkit-unassigned>
Status: RESOLVED WONTFIX    
Severity: Major CC: jakub.rusinek, marco.barisione, pierre-luc.beaudoin
Priority: P2 Keywords: Gtk
Version: 528+ (Nightly build)   
Hardware: PC   
OS: Linux   
Bug Depends on:    
Bug Blocks: 21210    
Attachments:
Description Flags
Some naive fixes none

Description David Hansen 2008-07-19 17:09:22 PDT
As the title says.  This results in ASSERTion failures and random crashed.

There's probably a far better solution but the attached diff points out the crashes I noticed so far.
Comment 1 David Hansen 2008-07-19 17:10:16 PDT
Created attachment 22384 [details]
Some naive fixes
Comment 2 Pierre-Luc Beaudoin 2008-07-21 07:57:20 PDT
Xavier Claessens has had the sames issues last week when he embedded WebKitGtk into Empathy.  

Raising to Major as this is crashing the embedding apps.

To quickly solve is issue, we replaced the ASSERT(containingWindow()) by a "if (containingWindow()) return;".  This needs more investigation.
Comment 3 David Hansen 2008-07-21 17:45:41 PDT
(In reply to comment #2)
> Xavier Claessens has had the sames issues last week when he embedded WebKitGtk
> into Empathy.  
> 
> Raising to Major as this is crashing the embedding apps.
> 
> To quickly solve is issue, we replaced the ASSERT(containingWindow()) by a "if
> (containingWindow()) return;".  This needs more investigation.

As a workaround you can use GtkPlug and GtkSocket.  This way the WebView widget always has a toplevel and you can realize it.  But this feels so wroooong ;-)

Comment 4 Pierre-Luc Beaudoin 2008-07-24 09:14:03 PDT
We have encountered places where countainingWindow() isn't null but countainingWindow()->window is. (Opening the archives window in Empathy (with adium themes)).
Comment 5 Marco Barisione 2008-08-04 11:59:52 PDT
(In reply to comment #1)
> Created an attachment (id=22384) [edit]
> Some naive fixes

For the fixes for PlatformScreen see bug #16881, I will post an updated patch in the next days.

The other one (in the update method) seems ok. Any comment from a reviewer?


(In reply to comment #2)
> Xavier Claessens has had the sames issues last week when he embedded WebKitGtk
> into Empathy.  
> 
> Raising to Major as this is crashing the embedding apps.
> 
> To quickly solve is issue, we replaced the ASSERT(containingWindow()) by a "if
> (containingWindow()) return;".  This needs more investigation.

This is a different issue from bug #19370, so not related to empathy. In that case the containingWindow() is null, in this case it's not null but not realized.
Comment 6 Jan Alonzo 2008-10-18 02:44:18 PDT
I'll resolve this as WONTFIX as the issues addressed by the patch have already been addressed by other (landed) patches.

cheers