Application that crashed: konqueror Version of the application: 4.3.2 (KDE 4.3.2) KDE Version: 4.3.2 (KDE 4.3.2) Qt Version: 4.5.2 Operating System: Linux 2.6.31-20-generic i686 Distribution: Ubuntu 9.10 -- Backtrace: Application: Konqueror (kdeinit4), signal: Aborted [KCrash Handler] #6 0x00c1a422 in __kernel_vsyscall () #7 0x004374d1 in raise () from /lib/tls/i686/cmov/libc.so.6 #8 0x0043a932 in abort () from /lib/tls/i686/cmov/libc.so.6 #9 0x00cf0f8c in qt_message_output (msgType=QtFatalMsg, buf=0xb357030 "QWidget: Must construct a QApplication before a QPaintDevice") at global/qglobal.cpp:2042 #10 0x00cf106e in qFatal (msg=0x20d48a8 "QWidget: Must construct a QApplication before a QPaintDevice") at global/qglobal.cpp:2241 #11 0x01a82316 in QWidgetPrivate (this=0xac685d8, version=17040642) at kernel/qwidget.cpp:205 #12 0x01f24f07 in QDialogPrivate (this=0x9919cf8, parent=0x0, f=...) at ../../include/QtGui/private/../../../src/gui/dialogs/qdialog_p.h:77 #13 QDialog (this=0x9919cf8, parent=0x0, f=...) at dialogs/qdialog.cpp:252 #14 0x07c3b008 in PermissionDialog::exec (this=0xbfc5bad4, cert=..., perm=...) at ../../../khtml/java/kjavaappletserver.cpp:785 #15 0x07c40746 in KJavaAppletServer::slotJavaRequest (this=0x978ddc8, qb=...) at ../../../khtml/java/kjavaappletserver.cpp:681 #16 0x07c41301 in KJavaAppletServer::qt_metacall (this=0x978ddc8, _c=QMetaObject::InvokeMetaMethod, _id=4, _a=0xbfc5bd58) at ./kjavaappletserver.moc:71 #17 0x00e00263 in QMetaObject::activate (sender=0x978d310, from_signal_index=25, to_signal_index=25, argv=0xbfc5bd58) at kernel/qobject.cpp:3113 #18 0x00e00ec2 in QMetaObject::activate (sender=0x978d310, m=0x7c643c8, local_signal_index=0, argv=0xbfc5bd58) at kernel/qobject.cpp:3187 #19 0x07c44b23 in KJavaProcess::received (this=0x978d310, _t1=...) at ./kjavaprocess.moc:88 #20 0x07c46f53 in KJavaProcess::slotReceivedData (this=0x978d310) at ../../../khtml/java/kjavaprocess.cpp:279 #21 0x07c47273 in KJavaProcess::qt_metacall (this=0x978d310, _c=QMetaObject::InvokeMetaMethod, _id=27, _a=0xbfc5beac) at ./kjavaprocess.moc:75 #22 0x00e00263 in QMetaObject::activate (sender=0x978d310, from_signal_index=13, to_signal_index=13, argv=0x0) at kernel/qobject.cpp:3113 #23 0x00e00ec2 in QMetaObject::activate (sender=0x978d310, m=0xed9e8c, local_signal_index=5, argv=0x0) at kernel/qobject.cpp:3187 #24 0x00d87e97 in QProcess::readyReadStandardOutput (this=0x978d310) at .moc/release-shared/moc_qprocess.cpp:156 #25 0x00d8aa0a in QProcessPrivate::_q_canReadStandardOutput (this=0x97854b8) at io/qprocess.cpp:564 #26 0x00dc770f in QProcessPrivate::waitForFinished (this=0x97854b8, msecs=10000) at io/qprocess_unix.cpp:1178 #27 0x00d882ce in QProcess::waitForFinished (this=0x978d310, msecs=10000) at io/qprocess.cpp:1318 #28 0x07c39149 in KJavaAppletServer::quit (this=0x978ddc8) at ../../../khtml/java/kjavaappletserver.cpp:464 #29 0x07c3bb37 in ~KJavaAppletServer (this=0x978ddc8, __in_chrg=<value optimized out>) at ../../../khtml/java/kjavaappletserver.cpp:157 #30 0x07c515c8 in ~KJavaServerMaintainer (this=0x978d658, __in_chrg=<value optimized out>) at ../../../khtml/java/kjavaappletviewer.cpp:92 #31 0x07c5179a in destroy () at ../../../khtml/java/kjavaappletviewer.cpp:89 #32 0x07c59e2b in ~KCleanUpGlobalStatic (this=0x7c654e8, __in_chrg=<value optimized out>) at ../../../kdecore/kernel/kglobal.h:62 #33 0x0043c05f in ?? () from /lib/tls/i686/cmov/libc.so.6 #34 0x0043c0cf in exit () from /lib/tls/i686/cmov/libc.so.6 #35 0x0804dde9 in launch (argc=<value optimized out>, _name=<value optimized out>, args=<value optimized out>, cwd=0x0, envc=0, envs=0x8fb2624 "", reset_env=false, tty=0x0, avoid_loops=false, startup_id_str=0x80511a5 "0") at ../../kinit/kinit.cpp:677 #36 0x0804ea35 in handle_launcher_request (sock=<value optimized out>, who=<value optimized out>) at ../../kinit/kinit.cpp:1169 #37 0x0804eeac in handle_requests (waitForPid=<value optimized out>) at ../../kinit/kinit.cpp:1362 #38 0x0804fbaf in main (argc=2, argv=0xbfc5c994, envp=0xbfc5c9a0) at ../../kinit/kinit.cpp:1793 Reported using DrKonqi
Could you perhaps elaborate on how to reproduce this?
<offtopic>Simple comment/thought: shouldn't the QProcess be disconnected on "KJavaAppletServer::quit"/"~KJavaAppletServer", so it won't retrigger a data read, and then causing the crash ?</offtopic>
(In reply to comment #2) > <offtopic>Simple comment/thought: shouldn't the QProcess be disconnected on > "KJavaAppletServer::quit"/"~KJavaAppletServer", so it won't retrigger a data > read, and then causing the crash ?</offtopic> Actually this is a very valid point. Another bug report, bug# 281099, seems to have a similar reason for crashing.
Git commit 6bc46d11b1204d437fea92c5ea2115f238360050 by Dawit Alemayehu. Committed on 19/11/2011 at 21:58. Pushed by adawit into branch 'KDE/4.7'. When KJavaAppletServer's dtor is called, disconnect from KJavaProcess first to avoid crashes. BUG: 281099 BUG: 233677 FIXED-IN: 4.7.4 REVIEW: 103188 M +2 -0 khtml/java/kjavaappletserver.cpp http://commits.kde.org/kdelibs/6bc46d11b1204d437fea92c5ea2115f238360050