Bug 26106 - [GTK] Crashes when you keep a combo open during a page transition, then close it
Summary: [GTK] Crashes when you keep a combo open during a page transition, then close it
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKitGTK (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC All
: P2 Normal
Assignee: Nobody
URL:
Keywords: Gtk
Depends on:
Blocks:
 
Reported: 2009-05-31 08:52 PDT by Gustavo Noronha (kov)
Modified: 2009-06-07 13:25 PDT (History)
0 users

See Also:


Attachments
backtrace (9.79 KB, text/plain)
2009-06-01 05:39 PDT, Gustavo Noronha (kov)
no flags Details
Make WebKitNetworkRequest a proper GObject (17.49 KB, patch)
2009-06-01 05:42 PDT, Gustavo Noronha (kov)
no flags Details | Formatted Diff | Diff
Avoid crashing when popup is open during page transition (1.70 KB, patch)
2009-06-01 05:44 PDT, Gustavo Noronha (kov)
no flags Details | Formatted Diff | Diff
Avoid crashing when popup is open during page transition (1.41 KB, patch)
2009-06-03 17:10 PDT, Gustavo Noronha (kov)
zecke: review+
Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Gustavo Noronha (kov) 2009-05-31 08:52:50 PDT
To reproduce go to any page which has a combo box. Click any link, and before the next page load is committed, click the combo box. After the new page load is committed click an option, or otherwise make the popup go away: crash.

This seems to be GTK+-specific, but I'm not yet sure. I'll try to reproduce in other ports. I'm still doing a debug build to get a proper backtrace, but this is what I got from a release build:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 0xb52a5760 (LWP 23667)]
0xb7cefc1c in WebCore::PopupMenu::menuUnmapped ()
   from /home/kov/src/WebKit/WebKitBuild/Release/.libs/libwebkit-1.0.so.2
Current language:  auto; currently asm
Comment 1 Gustavo Noronha (kov) 2009-06-01 05:39:03 PDT
Created attachment 30831 [details]
backtrace
Comment 2 Gustavo Noronha (kov) 2009-06-01 05:42:31 PDT
Created attachment 30832 [details]
Make WebKitNetworkRequest a proper GObject

 ChangeLog                                  |    8 ++
 GNUmakefile.am                             |    6 +
 WebKit/gtk/ChangeLog                       |   24 ++++
 WebKit/gtk/tests/testnetworkrequest.c      |  131 +++++++++++++++++++++
 WebKit/gtk/webkit/webkitnetworkrequest.cpp |  176 +++++++++++++++++++++++-----
 WebKit/gtk/webkit/webkitnetworkrequest.h   |    4 +
 6 files changed, 320 insertions(+), 29 deletions(-)
Comment 3 Gustavo Noronha (kov) 2009-06-01 05:44:26 PDT
Created attachment 30833 [details]
Avoid crashing when popup is open during page transition

 WebCore/ChangeLog                     |   15 +++++++++++++++
 WebCore/platform/gtk/PopupMenuGtk.cpp |   10 ++++++++--
 2 files changed, 23 insertions(+), 2 deletions(-)
Comment 4 Gustavo Noronha (kov) 2009-06-03 17:10:45 PDT
Created attachment 30933 [details]
Avoid crashing when popup is open during page transition

 WebCore/ChangeLog                     |   15 +++++++++++++++
 WebCore/platform/gtk/PopupMenuGtk.cpp |    5 ++++-
 2 files changed, 19 insertions(+), 1 deletions(-)
Comment 5 Gustavo Noronha (kov) 2009-06-03 17:12:16 PDT
Comment on attachment 30933 [details]
Avoid crashing when popup is open during page transition

Alternative solution to the client null checkproposed by zecke on IRC. Disregard the fact that the changelog still mentions nullity check, it is already fixed in my local copy, which I will commit if I get r+ =P
Comment 6 Holger Freyther 2009-06-07 06:10:09 PDT
Comment on attachment 30933 [details]
Avoid crashing when popup is open during page transition

Makes sense.
Comment 7 Gustavo Noronha (kov) 2009-06-07 13:25:30 PDT
Landed as r44490.