Bug 162424

Summary: Konqueror crashes when right clicking anywhere
Product: [Applications] konqueror Reporter: Christophe Marin <christophe>
Component: generalAssignee: David Faure <faure>
Status: RESOLVED FIXED    
Severity: crash    
Priority: HI    
Version: unspecified   
Target Milestone: ---   
Platform: unspecified   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:

Description Christophe Marin 2008-05-21 19:25:04 UTC
Version:           4.00.80 (KDE 4.0.80 >= (KDE 4.1 Beta1) (using 4.00.80 (KDE 4.0.80 >= (KDE 4.1 Beta1), compiled sources)
Compiler:          gcc
OS:                Linux (i686) release 2.6.25.3-mokona

This is a really fresh issue (appeared a few hours ago).

kdelibs/kdebase rev : 810826

When right clicking anywhere in konqueror, it instantly crashes.

In the console : 
konqueror(12013)/kdecore (trader) KMimeTypeTrader::query: query for mimeType  "text/html" ,  "KParts/ReadOnlyPart"  : returning  8  offers
KCrash: crashing... crashRecursionCounter = 2
KCrash: Application Name = konqueror path = <unknown> pid = 12013
sock_file=/home/krop/.kde/socket-mokona/kdeinit4__0

Backtrace :

Application: Konqueror (konqueror), signal SIGSEGV
[Thread debugging using libthread_db enabled]
[New Thread 0xb6306940 (LWP 12013)]
[KCrash handler]
#6  0xb79d2a62 in QBasicAtomicInt::ref (this=0x0)
    at ../../include/QtCore/../../src/corelib/arch/qatomic_i386.h:122
#7  0xb7551c1f in QUrl (this=0xbfbae064, other=@0x851f440) at io/qurl.cpp:3771
#8  0xb7775949 in KUrl (this=0xbfbae064, _u=@0x851f440)
    at /media/kde/src/KDE/kdelibs/kdecore/io/kurl.cpp:404
#9  0xb7e1c4c4 in KFileItem::url (this=0x853c860)
    at /media/kde/src/KDE/kdelibs/kio/kio/kfileitem.cpp:1183
#10 0xb7f96cf0 in KonqPopupMenuPrivate::init (this=0x86ccf60, kpf=0, flags=
      {i = -1078271400})
    at /media/kde/src/KDE/kdebase/apps/lib/konq/konq_popupmenu.cpp:203
#11 0xb7f98799 in KonqPopupMenu (this=0x8698028, items=@0xbfbae470, 
    viewURL=@0xbfbae344, actions=@0xbfbae318, newMenu=0x81b1778, kpf=0, flags=
      {i = -1078271116}, parentWidget=0x85416a0, mgr=0x8125748, 
    actionGroups=@0xbfbae428)
    at /media/kde/src/KDE/kdebase/apps/lib/konq/konq_popupmenu.cpp:166
#12 0xb803652b in KonqMainWindow::slotPopupMenu (this=0x8090638, 
    global=@0xbfbae6e4, items=@0xbfbae470, args=@0xbfbae788, 
    browserArgs=@0xbfbae6c0, itemFlags={i = -1078270868}, 
    _actionGroups=@0xbfbae714)
    at /media/kde/src/KDE/kdebase/apps/konqueror/src/konqmainwindow.cpp:4689
#13 0xb8036aec in KonqMainWindow::slotPopupMenu (this=0x8090638, 
    global=@0xbfbae6e4, url=@0xbfbae704, mode=32768, args=@0xbfbae788, 
    browserArgs=@0xbfbae6c0, flags={i = -1078270684}, actionGroups=@0xbfbae714)
    at /media/kde/src/KDE/kdebase/apps/konqueror/src/konqmainwindow.cpp:4510
#14 0xb804f8af in KonqMainWindow::qt_metacall (this=0x8090638, 
    _c=QMetaObject::InvokeMetaMethod, _id=7, _a=0xbfbae614)
    at /media/kde/build/KDE/kdebase/apps/konqueror/src/konqmainwindow.moc:327
#15 0xb75b04df in QMetaObject::activate (sender=0x8575330, 
    from_signal_index=26, to_signal_index=31, argv=0xbfbae614)
    at kernel/qobject.cpp:3007
#16 0xb75b06e8 in QMetaObject::activate (sender=0x8575330, m=0xb7f8322c, 
    from_local_signal_index=22, to_local_signal_index=27, argv=0xbfbae614)
    at kernel/qobject.cpp:3100
#17 0xb7f6f479 in KParts::BrowserExtension::popupMenu (this=0x8575330, 
    _t1=@0xbfbae6e4, _t2=@0xbfbae704, _t3=32768, _t4=@0xbfbae788, 
    _t5=@0xbfbae6c0, _t6={i = -1078270192}, _t7=@0xbfbae714)
    at /media/kde/build/KDE/kdelibs/kparts/browserextension.moc:347
#18 0xb412ab61 in KHTMLPart::popupMenu (this=0x85338a0, linkUrl=@0x8575074)
    at /media/kde/src/KDE/kdelibs/khtml/khtml_part.cpp:5079
#19 0xb4130faf in KHTMLPart::khtmlMousePressEvent (this=0x85338a0, 
    event=0xbfbaedac) at /media/kde/src/KDE/kdelibs/khtml/khtml_part.cpp:6362
#20 0xb4124c2b in KHTMLPart::customEvent (this=0x85338a0, event=0xbfbaedac)
    at /media/kde/src/KDE/kdelibs/khtml/khtml_part.cpp:6115
#21 0xb75aead5 in QObject::event (this=0x85338a0, e=0xbfbaedac)
    at kernel/qobject.cpp:1166
#22 0xb68d2859 in QApplicationPrivate::notify_helper (this=0x8057c10, 
    receiver=0x85338a0, e=0xbfbaedac) at kernel/qapplication.cpp:3772
#23 0xb68d2b6e in QApplication::notify (this=0xbfbb01a8, receiver=0x85338a0, 
    e=0xbfbaedac) at kernel/qapplication.cpp:3366
#24 0xb7bc2901 in KApplication::notify (this=0xbfbb01a8, receiver=0x85338a0, 
    event=0xbfbaedac)
    at /media/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:311
#25 0xb759b826 in QCoreApplication::notifyInternal (this=0xbfbb01a8, 
    receiver=0x85338a0, event=0xbfbaedac) at kernel/qcoreapplication.cpp:583
#26 0xb412065e in QCoreApplication::sendEvent (receiver=0x85338a0, event=0x0)
    at /opt/qt4/include/QtCore/qcoreapplication.h:215
#27 0xb4114282 in KHTMLView::mousePressEvent (this=0x85416a0, 
    _mouse=0xbfbaf804) at /media/kde/src/KDE/kdelibs/khtml/khtmlview.cpp:1198
#28 0xb692e996 in QWidget::event (this=0x85416a0, event=0xbfbaf804)
    at kernel/qwidget.cpp:6923
#29 0xb6c91f02 in QFrame::event (this=0x85416a0, e=0xbfbaf804)
    at widgets/qframe.cpp:657
#30 0xb410e47f in KHTMLView::widgetEvent (this=0x85416a0, e=0xbfbaf804)
    at /media/kde/src/KDE/kdelibs/khtml/khtmlview.cpp:2295
#31 0xb4111526 in KHTMLView::eventFilter (this=0x85416a0, o=0x8540df8, 
    e=0xbfbaf804) at /media/kde/src/KDE/kdelibs/khtml/khtmlview.cpp:2159
#32 0xb7599ba8 in QCoreApplicationPrivate::sendThroughObjectEventFilters (
    this=0x8057c10, receiver=0x8540df8, event=0xbfbaf804)
    at kernel/qcoreapplication.cpp:694
#33 0xb68d2836 in QApplicationPrivate::notify_helper (this=0x8057c10, 
    receiver=0x8540df8, e=0xbfbaf804) at kernel/qapplication.cpp:3768
#34 0xb68d33d7 in QApplication::notify (this=0xbfbb01a8, receiver=0x8540df8, 
    e=0xbfbaf804) at kernel/qapplication.cpp:3501
#35 0xb7bc2901 in KApplication::notify (this=0xbfbb01a8, receiver=0x8540df8, 
    event=0xbfbaf804)
    at /media/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:311
#36 0xb759b826 in QCoreApplication::notifyInternal (this=0xbfbb01a8, 
    receiver=0x8540df8, event=0xbfbaf804) at kernel/qcoreapplication.cpp:583
#37 0xb68de693 in QCoreApplication::sendSpontaneousEvent (receiver=0x8540df8, 
    event=0xbfbaf804)
    at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218
#38 0xb68d71a0 in QApplicationPrivate::sendMouseEvent (receiver=0x8540df8, 
    event=0xbfbaf804, alienWidget=0x0, nativeWidget=0x8540df8, 
    buttonDown=0xb7110760, lastMouseReceiver=@0xb7110764)
    at kernel/qapplication.cpp:2766
#39 0xb694cdc2 in QETWidget::translateMouseEvent (this=0x8540df8, 
    event=0xbfbafcf0) at kernel/qapplication_x11.cpp:4133
#40 0xb694dae7 in QApplication::x11ProcessEvent (this=0xbfbb01a8, 
    event=0xbfbafcf0) at kernel/qapplication_x11.cpp:3133
#41 0xb6976ec6 in x11EventSourceDispatch (s=0x805ab50, callback=0, 
    user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:148
#42 0xb64c4978 in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#43 0xb64c7bce in ?? () from /usr/lib/libglib-2.0.so.0
#44 0x08059e60 in ?? ()
#45 0x00000000 in ?? ()
#0  0xb8095424 in __kernel_vsyscall ()
Comment 1 Michael Pyne 2008-05-22 02:38:24 UTC
I can confirm this bug, backtrace is nigh identical:

Application: Konqueror (konqueror), signal SIGSEGV
[Thread debugging using libthread_db enabled]
[New Thread 0x7fca15a08700 (LWP 4405)]
[KCrash handler]
#5  QUrl (this=0x7fff21493210, other=@0x10)
    at /home/kde-svn/kde4/qt-copy/src/corelib/io/qurl.cpp:3769
#6  0x00007fca175cf549 in KUrl (this=0x7fff21493210, _u=@0x10)
    at /home/kde-svn/kde4/kdelibs/kdecore/io/kurl.cpp:404
#7  0x00007fca187686d0 in KFileItem::url (this=<value optimized out>)
    at /home/kde-svn/kde4/kdelibs/kio/kio/kfileitem.cpp:1183
#8  0x00007fca18d5ab2e in KonqPopupMenuPrivate::init (this=0x3232290, kpf=0, 
    flags=<value optimized out>)
    at /home/kde-svn/kde4/kdebase/apps/lib/konq/konq_popupmenu.cpp:203
#9  0x00007fca18d5d304 in KonqPopupMenu (this=0x323be20, 
    items=@0x7fff21493f40, viewURL=@0x7fff21493b50, 
    actions=<value optimized out>, newMenu=0x1f03750, kpf=0, 
    flags=@0x7fff21493ec0, parentWidget=0x2c6e390, mgr=0x1ed9ff0, 
    actionGroups=@0x7fff21493eb0)
    at /home/kde-svn/kde4/kdebase/apps/lib/konq/konq_popupmenu.cpp:166
#10 0x00007fca1922e4b3 in KonqMainWindow::slotPopupMenu (this=0x2b33060, 
    global=@0x7fff21494460, items=@0x7fff21493f40, args=@0x7fff214945f0, 
    browserArgs=@0x7fff21494320, itemFlags=@0x7fff21493f70, 
    _actionGroups=@0x7fff21494450)
    at /home/kde-svn/kde4/kdebase/apps/konqueror/src/konqmainwindow.cpp:4689
#11 0x00007fca1922f729 in KonqMainWindow::slotPopupMenu (this=0x2b33060, 
    global=@0x7fff21494460, url=@0x7fff21494390, mode=32768, 
    args=@0x7fff214945f0, browserArgs=@0x7fff21494320, flags=@0x7fff214940d0, 
    actionGroups=@0x7fff21494450)
    at /home/kde-svn/kde4/kdebase/apps/konqueror/src/konqmainwindow.cpp:4510
Comment 2 Michael Pyne 2008-05-22 02:39:58 UTC
This was introduced prior to revision 810597
Comment 3 Michael Pyne 2008-05-22 02:57:04 UTC
I can confirm that reverting to 810479 in just konq_popupmenu* and CMakeLists.txt fixes this bug, therefore was introduced by 810480.

David, any idea why this is crashing?  Do we need to install some plugin?
Comment 4 Michael Pyne 2008-05-22 05:07:37 UTC
SVN commit 811027 by mpyne:

Fix bug 162424 (konqueror crashes on any right click) recently introduced.

when calling QList<>::items().begin() (when the QList is the return value from a shared pointer) you
may get a different list when calling the corresponding end() function.  In fact the iterator returned
by that begin() is invalid as soon as the next line executes.

BUG:162424


 M  +4 -2      konq_popupmenu.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=811027