Bug 39970 - [Qt] Platform plugin crashes on exit.
Summary: [Qt] Platform plugin crashes on exit.
Status: RESOLVED WORKSFORME
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebKit Qt (show other bugs)
Version: 528+ (Nightly build)
Hardware: PC Linux
: P2 Normal
Assignee: Nobody
URL:
Keywords: Qt, QtTriaged
Depends on: 39968
Blocks:
  Show dependency treegraph
 
Reported: 2010-05-31 14:57 PDT by Yael
Modified: 2010-06-03 18:33 PDT (History)
2 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Yael 2010-05-31 14:57:44 PDT
Using r60414, QtTestBrowser crashes on exit if the platform plugin is used in a page that contains a <select> element.


Here is gdb stack trace:

#1  0x005934d1 in *__GI_raise (sig=6)
    at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#2  0x00596932 in *__GI_abort () at abort.c:92
#3  0x005c9ee5 in __libc_message (do_abort=2, 
    fmt=0x68d578 "*** glibc detected *** %s: %s: 0x%s ***\n")
    at ../sysdeps/unix/sysv/linux/libc_fatal.c:189
#4  0x005d3ff1 in malloc_printerr (action=<value optimized out>, 
    str=0x6 <Address 0x6 out of bounds>, ptr=0x86dda50) at malloc.c:6217
#5  0x005d56f2 in _int_free (av=<value optimized out>, p=<value optimized out>)
    at malloc.c:4750
#6  0x005d87cd in *__GI___libc_free (mem=0x86dda50) at malloc.c:3716
#7  0x004eb6f1 in operator delete(void*) () from /usr/lib/libstdc++.so.6
#8  0x0250adb9 in ~QtPlatformPlugin (this=0xb75014b8, 
    __in_chrg=<value optimized out>)
    at ../../../WebKit/qt/WebCoreSupport/QtPlatformPlugin.cpp:117
#9  0x024ee36e in ~ChromeClientQt (this=0xb7501470, 
    __in_chrg=<value optimized out>)
    at ../../../WebKit/qt/WebCoreSupport/ChromeClientQt.cpp:82
#10 0x024eee26 in WebCore::ChromeClientQt::chromeDestroyed (this=0xb7501470)
    at ../../../WebKit/qt/WebCoreSupport/ChromeClientQt.cpp:271
#11 0x022424c1 in ~Chrome (this=0xb7501240, __in_chrg=<value optimized out>)
    at ../../../WebCore/page/Chrome.cpp:67
---Type <return> to continue, or q <return> to quit---
#12 0x02296e35 in WTF::deleteOwnedPtr<WebCore::Chrome> (ptr=0xb7501240)
    at ../../../JavaScriptCore/wtf/OwnPtrCommon.h:55
#13 0x02295971 in ~OwnPtr (this=0xb7500a34, __in_chrg=<value optimized out>)
    at ../../../JavaScriptCore/wtf/OwnPtr.h:52
#14 0x02292a27 in ~Page (this=0xb7500a30, __in_chrg=<value optimized out>)
    at ../../../WebCore/page/Page.cpp:216
#15 0x02517a2e in ~QWebPagePrivate (this=0x81a3430, 
    __in_chrg=<value optimized out>) at ../../../WebKit/qt/Api/qwebpage.cpp:315
#16 0x0251c7f6 in ~QWebPage (this=0x81a33c0, __in_chrg=<value optimized out>)
    at ../../../WebKit/qt/Api/qwebpage.cpp:1707
#17 0x08077b56 in ~WebPage (this=0x81a33c0, __in_chrg=<value optimized out>)
    at ../../../../WebKitTools/QtTestBrowser/webpage.h:39
#18 0x002ca098 in QObjectPrivate::deleteChildren (this=0xb7501fa8)
    at kernel/qobject.cpp:1990
#19 0x03393bb5 in ~QWidget (this=0xb7501148, __in_chrg=<value optimized out>)
    at kernel/qwidget.cpp:1459
#20 0x03831b89 in ~QMainWindow (this=0xb7501148, 
    __in_chrg=<value optimized out>) at widgets/qmainwindow.cpp:342
#21 0x0806f7de in ~MainWindow (this=0xb7501148, 
    __in_chrg=<value optimized out>)
    at ../../../../WebKitTools/QtTestBrowser/mainwindow.h:41
#22 0x080666fb in ~LauncherWindow (this=0xb7501148, 
    __in_chrg=<value optimized out>)
---Type <return> to continue, or q <return> to quit---
    at ../../../../WebKitTools/QtTestBrowser/main.cpp:218
#23 0x002ce366 in qDeleteInEventHandler (o=0xb7501148)
    at kernel/qobject.cpp:4013
#24 0x002c8de8 in QObject::event (this=0xb7501148, e=0x81ca930)
    at kernel/qobject.cpp:1235
#25 0x033a65d1 in QWidget::event (this=0xb7501148, event=0x81ca930)
    at kernel/qwidget.cpp:8428
#26 0x03833dae in QMainWindow::event (this=0xb7501148, event=0x81ca930)
    at widgets/qmainwindow.cpp:1434
#27 0x0333ae2c in QApplicationPrivate::notify_helper (this=0x8134d68, 
    receiver=0xb7501148, e=0x81ca930) at kernel/qapplication.cpp:4242
#28 0x0333ac97 in QApplication::notify (this=0xbffff304, receiver=0xb7501148, 
    e=0x81ca930) at kernel/qapplication.cpp:4207
#29 0x002b140b in QCoreApplication::notifyInternal (this=0xbffff304, 
    receiver=0xb7501148, event=0x81ca930) at kernel/qcoreapplication.cpp:704
#30 0x0806f213 in QCoreApplication::sendEvent (receiver=0xb7501148, 
    event=0x81ca930)
    at /usr/local/Trolltech/Qt-4.6.0/include/QtCore/qcoreapplication.h:215
#31 0x002b24bf in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, 
    event_type=0, data=0x8134e50) at kernel/qcoreapplication.cpp:1345
#32 0x002b2177 in QCoreApplication::sendPostedEvents (receiver=0x0, 
    event_type=0) at kernel/qcoreapplication.cpp:1238
#33 0x0340c148 in QCoreApplication::sendPostedEvents ()
---Type <return> to continue, or q <return> to quit---
Comment 1 Yael 2010-05-31 14:59:02 PDT
Please note that the crash is in webkit, not in the sample plugin.
Comment 2 Luiz Agostini 2010-05-31 15:23:36 PDT
It does not crashes in MacOS and that is why I did not notice the bug before releasing.

Kenneth has verified that the crashes does not appear with the patch in bug 39968 applied.
Comment 3 Yael 2010-05-31 17:45:35 PDT
(In reply to comment #2)
> It does not crashes in MacOS and that is why I did not notice the bug before releasing.
> 
> Kenneth has verified that the crashes does not appear with the patch in bug 39968 applied.

Great! Looking forward for that patch to land.
Comment 4 Yael 2010-06-03 18:33:54 PDT
Verified that this was fixed with r60593.
thanks!