Bug 294336 - Dolphin crash on right mouse click
Summary: Dolphin crash on right mouse click
Status: RESOLVED FIXED
Alias: None
Product: dolphin
Classification: Applications
Component: plugins: dropbox (show other bugs)
Version: 2.0
Platform: Arch Linux Linux
: NOR crash
Target Milestone: ---
Assignee: Peter Penz
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2012-02-18 06:50 UTC by Ilya
Modified: 2012-04-27 07:32 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In: 4.9.0


Attachments
New crash information added by DrKonqi (8.68 KB, text/plain)
2012-02-18 07:06 UTC, Ilya
Details
patch fixing the given bug (479 bytes, patch)
2012-02-18 08:45 UTC, Ilya
Details
New crash information added by DrKonqi (8.24 KB, text/plain)
2012-04-25 23:28 UTC, Adria
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Ilya 2012-02-18 06:50:35 UTC
Application: dolphin (2.0)
KDE Platform Version: 4.8.00 (4.8.0
Qt Version: 4.8.0
Operating System: Linux 2.6.37.6-pae i686
Distribution (Platform): Archlinux Packages

-- Information about the crash:
- What I was doing when the application crashed:

When i go to my SMB Public folder, and want to create new Folder. I click right button on a free space, and getting the crash. 

KDE Base compiled with Debug mode, and without strip option.

I suggest, that bug is in the Dropbox plugin, but Dolphin, IMHO, must catch following errors, but not crashing. I'm specially do not update box-plugin from aur, to give you a valid backtrace

The crash can be reproduced every time.

-- Backtrace:
Application: Dolphin (kdeinit4), signal: Segmentation fault
Using host libthread_db library "/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0xb54449c0 (LWP 19795))]

Thread 2 (Thread 0xb0906b40 (LWP 19796)):
#0  0xb7701424 in __kernel_vsyscall ()
#1  0xb5f09650 in poll () from /lib/libc.so.6
#2  0xb58ec10b in g_poll () from /usr/lib/libglib-2.0.so.0
#3  0xb58dd656 in ?? () from /usr/lib/libglib-2.0.so.0
#4  0xb58dd9ea in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#5  0xb6d46607 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0xb6d1268d in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#7  0xb6d12929 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#8  0xb6bfd68c in QThread::exec() () from /usr/lib/libQtCore.so.4
#9  0xb6cefdad in ?? () from /usr/lib/libQtCore.so.4
#10 0xb6c00b20 in ?? () from /usr/lib/libQtCore.so.4
#11 0xb6b83cac in start_thread () from /lib/libpthread.so.0
#12 0xb5f1376e in clone () from /lib/libc.so.6

Thread 1 (Thread 0xb54449c0 (LWP 19795)):
[KCrash Handler]
#7  0xb6cc0cb8 in QUrl::QUrl(QUrl const&) () from /usr/lib/libQtCore.so.4
#8  0xb6f8042a in KUrl::KUrl(KUrl const&) () from /usr/lib/libkdecore.so.5
#9  0xb509a75f in KFileItem::url() const () from /usr/lib/libkio.so.5
#10 0xafca60a0 in ?? () from /usr/lib/kde4/dolphin-box-plugin.so
#11 0xb1847686 in VersionControlObserver::actions (this=0x95f9950, items=...) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/kde-baseapps-4.8.0/dolphin/src/views/versioncontrol/versioncontrolobserver.cpp:124
#12 0xb18389bc in DolphinView::versionControlActions (this=0x95c8f40, items=...) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/kde-baseapps-4.8.0/dolphin/src/views/dolphinview.cpp:534
#13 0xb196f4c0 in DolphinContextMenu::addVersionControlPluginActions (this=0x9992eb0) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/kde-baseapps-4.8.0/dolphin/src/dolphincontextmenu.cpp:525
#14 0xb196fdee in DolphinContextMenu::openViewportContextMenu (this=0x9992eb0) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/kde-baseapps-4.8.0/dolphin/src/dolphincontextmenu.cpp:358
#15 0xb19708dc in DolphinContextMenu::open (this=0x9992eb0) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/kde-baseapps-4.8.0/dolphin/src/dolphincontextmenu.cpp:139
#16 0xb19603df in DolphinMainWindow::openContextMenu (this=0x951b4e0, pos=..., item=..., url=..., customActions=...) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/kde-baseapps-4.8.0/dolphin/src/dolphinmainwindow.cpp:1394
#17 0xb196406d in DolphinMainWindow::qt_static_metacall (_o=0x951b4e0, _c=QMetaObject::InvokeMetaMethod, _id=72, _a=0xbf92ad6c) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/build/dolphin/src/dolphinmainwindow.moc:259
#18 0xb6d2a351 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#19 0xb183732d in DolphinView::requestContextMenu (this=0x95c8f40, _t1=..., _t2=..., _t3=..., _t4=...) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/build/dolphin/src/dolphinview.moc:414
#20 0xb1838098 in DolphinView::slotViewContextMenuRequested (this=0x95c8f40, pos=...) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/kde-baseapps-4.8.0/dolphin/src/views/dolphinview.cpp:735
#21 0xb183bf3b in DolphinView::qt_static_metacall (_o=0x95c8f40, _c=QMetaObject::InvokeMetaMethod, _id=44, _a=0xbf92af08) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/build/dolphin/src/dolphinview.moc:224
#22 0xb6d2a351 in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/libQtCore.so.4
#23 0xb180a255 in KItemListController::viewContextMenuRequested (this=0x9606e10, _t1=...) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/build/dolphin/src/kitemlistcontroller.moc:227
#24 0xb180b77c in KItemListController::mousePressEvent (this=<error reading variable: Cannot access memory at address 0x1>, event=<error reading variable: Cannot access memory at address 0x5>, transform=<error reading variable: Cannot access memory at address 0x9>) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/kde-baseapps-4.8.0/dolphin/src/kitemviews/kitemlistcontroller.cpp:527
#25 0xb180965f in KItemListController::processEvent (this=0x9606e10, event=0xbf92c044, transform=...) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/kde-baseapps-4.8.0/dolphin/src/kitemviews/kitemlistcontroller.cpp:868
#26 0xb1817370 in KItemListView::event (this=0x95ec3a0, event=0xbf92c044) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/kde-baseapps-4.8.0/dolphin/src/kitemviews/kitemlistview.cpp:689
#27 0xb61ee964 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#28 0xb61f3d93 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#29 0xb7479f51 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#30 0xb6d13afe in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#31 0xb61eca3d in ?? () from /usr/lib/libQtGui.so.4
#32 0xb6894b2b in ?? () from /usr/lib/libQtGui.so.4
#33 0xb6895783 in ?? () from /usr/lib/libQtGui.so.4
#34 0xb689af55 in ?? () from /usr/lib/libQtGui.so.4
#35 0xb689b4e3 in QGraphicsScene::mousePressEvent(QGraphicsSceneMouseEvent*) () from /usr/lib/libQtGui.so.4
#36 0xb68a4b04 in QGraphicsScene::event(QEvent*) () from /usr/lib/libQtGui.so.4
#37 0xb61ee964 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#38 0xb61f3d93 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#39 0xb7479f51 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#40 0xb6d13afe in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#41 0xb61eca3d in ?? () from /usr/lib/libQtGui.so.4
#42 0xb68bcfb2 in QGraphicsView::mousePressEvent(QMouseEvent*) () from /usr/lib/libQtGui.so.4
#43 0xb6248da8 in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4
#44 0xb6660e15 in QFrame::event(QEvent*) () from /usr/lib/libQtGui.so.4
#45 0xb66f3ae1 in QAbstractScrollArea::viewportEvent(QEvent*) () from /usr/lib/libQtGui.so.4
#46 0xb68c6e6c in QGraphicsView::viewportEvent(QEvent*) () from /usr/lib/libQtGui.so.4
#47 0xb66f6226 in ?? () from /usr/lib/libQtGui.so.4
#48 0xb6d13c96 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#49 0xb61ee932 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#50 0xb61f4a80 in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#51 0xb7479f51 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#52 0xb6d13afe in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#53 0xb61ef925 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/libQtGui.so.4
#54 0xb6278af4 in ?? () from /usr/lib/libQtGui.so.4
#55 0xb6277add in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/libQtGui.so.4
#56 0xb62a262c in ?? () from /usr/lib/libQtGui.so.4
#57 0xb58dd01f in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#58 0xb58dd750 in ?? () from /usr/lib/libglib-2.0.so.0
#59 0xb58dd9ea in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#60 0xb6d465a7 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#61 0xb62a222a in ?? () from /usr/lib/libQtGui.so.4
#62 0xb6d1268d in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#63 0xb6d12929 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#64 0xb6d17b5a in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#65 0xb61ec7c4 in QApplication::exec() () from /usr/lib/libQtGui.so.4
#66 0xb1972ec2 in kdemain (argc=5, argv=0x943ec80) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/kde-baseapps-4.8.0/dolphin/src/main.cpp:91
#67 0x0804f61c in _start ()

Possible duplicates by query: bug 289571, bug 288781, bug 282108.

Reported using DrKonqi
Comment 1 Ilya 2012-02-18 07:06:51 UTC
Created attachment 68894 [details]
New crash information added by DrKonqi

dolphin (2.0) on KDE Platform 4.8.00 (4.8.0 using Qt 4.8.0

- What I was doing when the application crashed:

Update dolphin-box-plugin-git plugin with debug symbols.

Backtrace with dropbox debugging symbols

-- Backtrace (Reduced):
#7  0xb6d6ccb8 in QUrl::QUrl(QUrl const&) () from /usr/lib/libQtCore.so.4
#8  0xb702c42a in KUrl::KUrl(KUrl const&) () from /usr/lib/libkdecore.so.5
#9  0xb514675f in KFileItem::url() const () from /usr/lib/libkio.so.5
#10 0xafd53bec in DolphinBoxPlugin::contextMenuActions (this=0x8463c50, items=...) at /home/bkmz/builds/dolphin-box-plugin-git/src/dolphin-box-plugin-build/dolphin-box-plugin.cpp:193
#11 0xb18f3686 in VersionControlObserver::actions (this=0x837f900, items=...) at /home/bkmz/builds/ABS/abs/extra/kdebase/src/kde-baseapps-4.8.0/dolphin/src/views/versioncontrol/versioncontrolobserver.cpp:124
Comment 2 Ilya 2012-02-18 08:45:33 UTC
Created attachment 68896 [details]
patch fixing the given bug

This patch fix the following error. But i can't understand the dolphin behavior, contextMenuActions method call's from free space on dolphin page only on smb shared folder, on my home folders it's doesn't effect.
Comment 3 Adria 2012-04-25 23:28:13 UTC
Created attachment 70659 [details]
New crash information added by DrKonqi

dolphin (2.0) on KDE Platform 4.8.2 (4.8.2) using Qt 4.8.1

- What I was doing when the application crashed:

Search with nepomuk and then right-click on an empty space in the file-manager view

-- Backtrace (Reduced):
#6  0x00007f8e5bdb2a70 in QUrl::QUrl(QUrl const&) () from /usr/lib/libQtCore.so.4
#7  0x00007f8e5c286b79 in KUrl::KUrl(KUrl const&) () from /usr/lib/libkdecore.so.5
#8  0x00007f8e54ac69d0 in KFileItem::url() const () from /usr/lib/libkio.so.5
[...]
#10 0x00007f8e495a43b0 in VersionControlObserver::actions (this=<optimized out>, items=...) at /tmp/yaourt-tmp-adria/abs-kdebase-dolphin/src/kde-baseapps-4.8.2/dolphin/src/views/versioncontrol/versioncontrolobserver.cpp:124
#11 0x00007f8e495978fe in DolphinView::versionControlActions (this=0x196cfb0, items=...) at /tmp/yaourt-tmp-adria/abs-kdebase-dolphin/src/kde-baseapps-4.8.2/dolphin/src/views/dolphinview.cpp:551
Comment 4 Ilya 2012-04-26 00:58:20 UTC
#9  0x00007f8e4228593f in ?? () from /usr/lib/kde4/dolphin-box-plugin.so

So, build dolphin plugin with debugging symbols. And are you using my patch?
Comment 5 Peter Penz 2012-04-27 07:32:17 UTC
Git commit c06dae12ff85b0c2b9381b2e35c7553b77be8706 by Peter Penz.
Committed on 27/04/2012 at 09:28.
Pushed by ppenz into branch 'master'.

Never pass null-items to version-control-plugins

Some plugins are not prepared for this and might crash. Although
the additional check in VersionControlObserver::actions() should not
be necessary because of the fix in DolphinView, it is left here
to catch potential other cases where a null-item might get passed
accidently.

Thanks to Ilya for initially patching the Box-plugin which gave
a hint whats going wrong.
FIXED-IN: 4.9.0

M  +3    -1    dolphin/src/views/dolphinview.cpp
M  +11   -1    dolphin/src/views/versioncontrol/versioncontrolobserver.cpp

http://commits.kde.org/kde-baseapps/c06dae12ff85b0c2b9381b2e35c7553b77be8706