Bug 20110 - The GTK port wrongly assumes that the web view widget is always realized.
Summary: The GTK port wrongly assumes that the web view widget is always realized.
Status: RESOLVED WONTFIX
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Linux
: P2 Major
Assignee: Nobody
URL:
Keywords: Gtk
Depends on:
Blocks: 21210
  Show dependency treegraph
 
Reported: 2008-07-19 17:09 PDT by David Hansen
Modified: 2008-10-18 02:44 PDT (History)
3 users (show)

See Also:


Attachments
Some naive fixes (2.45 KB, patch)
2008-07-19 17:10 PDT, David Hansen
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
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