Bug 296622 - Kate/Kile crashes in KToolBar::Private::findAction
Summary: Kate/Kile crashes in KToolBar::Private::findAction
Status: RESOLVED FIXED
Alias: None
Product: kdelibs
Classification: Unmaintained
Component: kdeui (show other bugs)
Version: 4.8
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: ---
Assignee: kdelibs bugs
URL:
Keywords:
: 296630 296936 297004 297221 297617 298057 298576 298652 298939 300242 301509 301940 303207 303856 305003 306816 309288 316167 (view as bug list)
Depends on:
Blocks:
 
Reported: 2012-03-23 12:49 UTC by James Heather
Modified: 2013-05-19 07:03 UTC (History)
30 users (show)

See Also:
Latest Commit:
Version Fixed In: 4.8.5
Sentry Crash Report:


Attachments
New crash information added by DrKonqi (13.52 KB, text/plain)
2012-04-19 17:32 UTC, Filippov Aleksey
Details
New crash information added by DrKonqi (20.22 KB, text/plain)
2012-05-02 07:49 UTC, Kevin Goeser
Details
New crash information added by DrKonqi (6.01 KB, text/plain)
2012-05-10 09:26 UTC, kavol
Details
New crash information added by DrKonqi (7.39 KB, text/plain)
2012-05-10 12:17 UTC, kavol
Details
New crash information added by DrKonqi (8.38 KB, text/plain)
2012-05-21 22:03 UTC, Dima Ryazanov
Details
New crash information added by DrKonqi (7.72 KB, text/plain)
2012-05-25 14:00 UTC, Sandro Mani
Details
New crash information added by DrKonqi (12.40 KB, text/plain)
2012-06-01 18:16 UTC, Tomáš Chvátal
Details
New crash information added by DrKonqi (17.93 KB, text/plain)
2012-06-27 16:01 UTC, Xuepeng Fan
Details
New crash information added by DrKonqi (3.26 KB, text/plain)
2012-06-27 19:22 UTC, Dietrich.Lolz
Details
New crash information added by DrKonqi (8.51 KB, text/plain)
2013-05-19 07:03 UTC, Simon Ball
Details

Note You need to log in before you can comment on or make changes to this bug.
Description James Heather 2012-03-23 12:49:44 UTC
Application: kile (2.1.1)
KDE Platform Version: 4.8.1 (4.8.1)
Qt Version: 4.8.0
Operating System: Linux 3.3.0-4.fc16.x86_64 x86_64
Distribution: "Fedora release 16 (Verne)"

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

Closing Kile, with two or three tabs open. The crash occurred as I closed the application. There were no unsaved files, so nothing was lost.

The crash does not seem to be reproducible.

-- Backtrace:
Application: Kile (kile), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
82	T_PSEUDO (SYSCALL_SYMBOL, SYSCALL_NAME, SYSCALL_NARGS)
[Current thread is 1 (Thread 0x7fb8fae77840 (LWP 2777))]

Thread 3 (Thread 0x7fb8e7fff700 (LWP 2792)):
#0  0x0000003279a0af9d in __pthread_mutex_unlock_usercnt (mutex=<optimized out>, decr=<optimized out>) at pthread_mutex_unlock.c:53
#1  __pthread_mutex_unlock (mutex=0x7fb8e00009a8) at pthread_mutex_unlock.c:298
#2  0x000000327ba44465 in g_main_context_query (context=0x7fb8e00009a0, max_priority=<optimized out>, timeout=0x7fb8e7ffebec, fds=<optimized out>, n_fds=2) at gmain.c:2872
#3  0x000000327ba44eda in g_main_context_iterate (context=0x7fb8e00009a0, block=1, dispatch=1, self=<optimized out>) at gmain.c:3071
#4  0x000000327ba4549c in g_main_context_iteration (context=0x7fb8e00009a0, may_block=1) at gmain.c:3152
#5  0x00000032c1fa7dc6 in QEventDispatcherGlib::processEvents (this=0x7fb8e00008c0, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:426
#6  0x00000032c1f78182 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#7  0x00000032c1f783d7 in QEventLoop::exec (this=0x7fb8e7ffed10, flags=...) at kernel/qeventloop.cpp:204
#8  0x00000032c1e78b27 in QThread::exec (this=<optimized out>) at thread/qthread.cpp:501
#9  0x00000032c1f57e7f in QInotifyFileSystemWatcherEngine::run (this=0x1f16bd0) at io/qfilesystemwatcher_inotify.cpp:248
#10 0x00000032c1e7bb6b in QThreadPrivate::start (arg=0x1f16bd0) at thread/qthread_unix.cpp:298
#11 0x0000003279a07d90 in start_thread (arg=0x7fb8e7fff700) at pthread_create.c:309
#12 0x00000032796f0f5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 2 (Thread 0x7fb8e6692700 (LWP 2858)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:165
#1  0x00000032d1784e62 in QTWTF::TCMalloc_PageHeap::scavengerThread (this=0x32d1a7e240) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:2359
#2  0x00000032d1784e99 in QTWTF::TCMalloc_PageHeap::runScavengerThread (context=<optimized out>) at ../3rdparty/javascriptcore/JavaScriptCore/wtf/FastMalloc.cpp:1464
#3  0x0000003279a07d90 in start_thread (arg=0x7fb8e6692700) at pthread_create.c:309
#4  0x00000032796f0f5d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:115

Thread 1 (Thread 0x7fb8fae77840 (LWP 2777)):
[KCrash Handler]
#6  0x00000032c734497a in KToolBar::Private::findAction (this=<optimized out>, actionName=..., clientOut=0x0) at /usr/src/debug/kdelibs-4.8.1/kdeui/widgets/ktoolbar.cpp:548
#7  0x00000032c7345027 in KToolBar::Private::slotContextAboutToShow (this=0x27488d0) at /usr/src/debug/kdelibs-4.8.1/kdeui/widgets/ktoolbar.cpp:574
#8  0x00000032c1f8cce1 in QMetaObject::activate (sender=0x27a5400, m=<optimized out>, local_signal_index=<optimized out>, argv=0x0) at kernel/qobject.cpp:3547
#9  0x00000032c4a0f762 in QMenu::popup (this=0x27a5400, p=..., atAction=0x0) at widgets/qmenu.cpp:1832
#10 0x00000032c4a1023d in QMenu::exec (this=0x27a5400, p=..., action=0x0) at widgets/qmenu.cpp:2101
#11 0x00000032c7344f92 in contextMenuEvent (event=0x7ffffc7db480, this=0x259abf0) at /usr/src/debug/kdelibs-4.8.1/kdeui/widgets/ktoolbar.cpp:873
#12 KToolBar::contextMenuEvent (this=0x259abf0, event=0x7ffffc7db480) at /usr/src/debug/kdelibs-4.8.1/kdeui/widgets/ktoolbar.cpp:867
#13 0x00000032c4619d78 in QWidget::event (this=0x259abf0, event=0x7ffffc7db480) at kernel/qwidget.cpp:8528
#14 0x00000032c4a4822b in QToolBar::event (this=0x259abf0, event=0x7ffffc7db480) at widgets/qtoolbar.cpp:1250
#15 0x00000032c45c9994 in notify_helper (e=0x7ffffc7db480, receiver=0x259abf0, this=0x19ef840) at kernel/qapplication.cpp:4550
#16 QApplicationPrivate::notify_helper (this=0x19ef840, receiver=0x259abf0, e=0x7ffffc7db480) at kernel/qapplication.cpp:4522
#17 0x00000032c45ceccd in QApplication::notify (this=<optimized out>, receiver=0x261c6a0, e=0x7ffffc7db7f0) at kernel/qapplication.cpp:4172
#18 0x00000032c7251d56 in KApplication::notify (this=0x7ffffc7dc4f0, receiver=0x261c6a0, event=0x7ffffc7db7f0) at /usr/src/debug/kdelibs-4.8.1/kdeui/kernel/kapplication.cpp:311
#19 0x00000032c1f7904c in QCoreApplication::notifyInternal (this=0x7ffffc7dc4f0, receiver=0x261c6a0, event=0x7ffffc7db7f0) at kernel/qcoreapplication.cpp:876
#20 0x00000032c4646348 in sendSpontaneousEvent (event=0x7ffffc7db7f0, receiver=0x261c6a0) at ../../src/corelib/kernel/qcoreapplication.h:234
#21 QETWidget::translateMouseEvent (this=<optimized out>, event=<optimized out>) at kernel/qapplication_x11.cpp:4525
#22 0x00000032c46451aa in QApplication::x11ProcessEvent (this=0x7ffffc7dc4f0, event=0x7ffffc7dc080) at kernel/qapplication_x11.cpp:3641
#23 0x00000032c466c97c in x11EventSourceDispatch (s=0x19f4230, callback=0, user_data=0x0) at kernel/qguieventdispatcher_glib.cpp:148
#24 0x000000327ba44acd in g_main_dispatch (context=0x19f34e0) at gmain.c:2441
#25 g_main_context_dispatch (context=0x19f34e0) at gmain.c:3011
#26 0x000000327ba452c8 in g_main_context_iterate (context=0x19f34e0, block=<optimized out>, dispatch=1, self=<optimized out>) at gmain.c:3089
#27 0x000000327ba4549c in g_main_context_iteration (context=0x19f34e0, may_block=1) at gmain.c:3152
#28 0x00000032c1fa7d5f in QEventDispatcherGlib::processEvents (this=0x19bc530, flags=<optimized out>) at kernel/qeventdispatcher_glib.cpp:424
#29 0x00000032c466c66e in QGuiEventDispatcherGlib::processEvents (this=<optimized out>, flags=<optimized out>) at kernel/qguieventdispatcher_glib.cpp:207
#30 0x00000032c1f78182 in QEventLoop::processEvents (this=<optimized out>, flags=...) at kernel/qeventloop.cpp:149
#31 0x00000032c1f783d7 in QEventLoop::exec (this=0x7ffffc7dc450, flags=...) at kernel/qeventloop.cpp:204
#32 0x00000032c1f7cdd5 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1148
#33 0x0000000000436b34 in main (argc=1, argv=0x7ffffc7dd318) at /usr/src/debug/kile-2.1.1/src/main.cpp:166

Reported using DrKonqi
Comment 1 Michel Ludwig 2012-03-23 12:58:21 UTC
Forwarding to kdelibs.
Comment 2 Dominik Haumann 2012-03-28 06:38:36 UTC
*** Bug 296630 has been marked as a duplicate of this bug. ***
Comment 3 Dominik Haumann 2012-03-28 06:38:44 UTC
*** Bug 296936 has been marked as a duplicate of this bug. ***
Comment 4 Dominik Haumann 2012-03-29 06:44:55 UTC
*** Bug 297004 has been marked as a duplicate of this bug. ***
Comment 5 Dominik Haumann 2012-04-01 09:11:29 UTC
*** Bug 297221 has been marked as a duplicate of this bug. ***
Comment 6 Dominik Haumann 2012-04-15 10:03:21 UTC
*** Bug 298057 has been marked as a duplicate of this bug. ***
Comment 7 Milian Wolff 2012-04-17 17:54:26 UTC
*** Bug 297617 has been marked as a duplicate of this bug. ***
Comment 8 Filippov Aleksey 2012-04-19 17:32:58 UTC
Created attachment 70508 [details]
New crash information added by DrKonqi

kdevelop (4.3.0) on KDE Platform 4.8.2 (4.8.2) using Qt 4.8.1

- What I was doing when the application crashed:

I clicked "Build" button on toolbar using right mouse button.

-- Backtrace (Reduced):
#6  0x00007f9224a8260a in KToolBar::Private::findAction(QString const&, KXMLGUIClient**) const () from /usr/lib/libkdeui.so.5
#7  0x00007f9224a82cb7 in KToolBar::Private::slotContextAboutToShow() () from /usr/lib/libkdeui.so.5
[...]
#9  0x00007f92239549d0 in QMenu::popup(QPoint const&, QAction*) () from /usr/lib/libQtGui.so.4
#10 0x00007f92239554a4 in QMenu::exec(QPoint const&, QAction*) () from /usr/lib/libQtGui.so.4
#11 0x00007f9224a82c22 in KToolBar::contextMenuEvent(QContextMenuEvent*) () from /usr/lib/libkdeui.so.5
Comment 9 Jekyll Wu 2012-04-21 23:10:01 UTC
*** Bug 298576 has been marked as a duplicate of this bug. ***
Comment 10 Kevin Goeser 2012-05-02 07:49:01 UTC
Created attachment 70800 [details]
New crash information added by DrKonqi

kdevelop (4.3.1) on KDE Platform 4.8.2 (4.8.2) using Qt 4.8.1

- What I was doing when the application crashed:
Trying to click / drag the toolbar, since the tab of the editor somehow overlapped the toolbar.

-- Backtrace (Reduced):
#6  0x0000003027f2923a in KToolBar::Private::findAction (this=<optimized out>, actionName=..., clientOut=0x0) at ../../kdeui/widgets/ktoolbar.cpp:548
#7  0x0000003027f298e7 in KToolBar::Private::slotContextAboutToShow (this=0x2c8c3c0) at ../../kdeui/widgets/ktoolbar.cpp:574
[...]
#9  0x00000030234195f2 in QMenu::popup (this=0x72cf780, p=..., atAction=0x0) at widgets/qmenu.cpp:1832
#10 0x000000302341a11d in QMenu::exec (this=<optimized out>, p=..., action=0x0) at widgets/qmenu.cpp:2110
#11 0x0000003027f29852 in contextMenuEvent (event=0x7fff2fbafe00, this=0x2c8b7f0) at ../../kdeui/widgets/ktoolbar.cpp:873
Comment 11 kavol 2012-05-10 09:26:02 UTC
Created attachment 70995 [details]
New crash information added by DrKonqi

konqueror (4.8.3 (4.8.3)) on KDE Platform 4.8.3 (4.8.3) using Qt 4.8.1

- What I was doing when the application crashed:

I've right-mouse clicked the Next button on Konqueror toolbar

-- Backtrace (Reduced):
#6  0x00000033b752ea09 in KToolBar::Private::findAction (this=this@entry=0x1a385f0, actionName=..., clientOut=clientOut@entry=0x0) at /usr/src/debug/kdelibs-4.8.3/kdeui/widgets/ktoolbar.cpp:548
#7  0x00000033b752f0a7 in KToolBar::Private::slotContextAboutToShow (this=0x1a385f0) at /usr/src/debug/kdelibs-4.8.3/kdeui/widgets/ktoolbar.cpp:574
[...]
#9  0x00000033b5c00560 in QMenu::popup (this=this@entry=0x8712800, p=..., atAction=atAction@entry=0x0) at widgets/qmenu.cpp:1832
#10 0x00000033b5c01034 in QMenu::exec (this=0x8712800, p=..., action=0x0) at widgets/qmenu.cpp:2110
#11 0x00000033b752f012 in contextMenuEvent (event=0x7fffc5de8ef0, this=0x1a42e00) at /usr/src/debug/kdelibs-4.8.3/kdeui/widgets/ktoolbar.cpp:873
Comment 12 kavol 2012-05-10 12:17:39 UTC
Created attachment 70998 [details]
New crash information added by DrKonqi

konqueror (4.8.3 (4.8.3)) on KDE Platform 4.8.3 (4.8.3) using Qt 4.8.1

- What I was doing when the application crashed:

looks like the rightclick on back/forth in Konqueror is quite reliable way to crash (doesn't happen immediately, but after some time of Konqueror running and using the buttons)

-- Backtrace (Reduced):
#7  0x00000033b752ea0c in KToolBar::Private::findAction (this=this@entry=0x2561410, actionName=..., clientOut=clientOut@entry=0x0) at /usr/src/debug/kdelibs-4.8.3/kdeui/widgets/ktoolbar.cpp:548
#8  0x00000033b752f0a7 in KToolBar::Private::slotContextAboutToShow (this=0x2561410) at /usr/src/debug/kdelibs-4.8.3/kdeui/widgets/ktoolbar.cpp:574
[...]
#10 0x00000033b5c00560 in QMenu::popup (this=this@entry=0x50f10e0, p=..., atAction=atAction@entry=0x0) at widgets/qmenu.cpp:1832
#11 0x00000033b5c01034 in QMenu::exec (this=0x50f10e0, p=..., action=0x0) at widgets/qmenu.cpp:2110
#12 0x00000033b752f012 in contextMenuEvent (event=0x7fff0e3c0370, this=0x256b800) at /usr/src/debug/kdelibs-4.8.3/kdeui/widgets/ktoolbar.cpp:873
Comment 13 Dima Ryazanov 2012-05-21 22:03:18 UTC
Created attachment 71277 [details]
New crash information added by DrKonqi

kate (3.8.2) on KDE Platform 4.8.2 (4.8.2) using Qt 4.8.1

- What I was doing when the application crashed:

I right-clicked a toolbar (possibly empty area) in Kate.

-- Backtrace (Reduced):
#6  0x00007f3cf4ef723a in KToolBar::Private::findAction (this=<optimized out>, actionName=..., clientOut=0x0) at ../../kdeui/widgets/ktoolbar.cpp:548
#7  0x00007f3cf4ef78e7 in KToolBar::Private::slotContextAboutToShow (this=0x26483d0) at ../../kdeui/widgets/ktoolbar.cpp:574
[...]
#9  0x00007f3cf5fa35f2 in QMenu::popup (this=0xdd86570, p=..., atAction=0x0) at widgets/qmenu.cpp:1834
#10 0x00007f3cf5fa411d in QMenu::exec (this=<optimized out>, p=..., action=0x0) at widgets/qmenu.cpp:2113
#11 0x00007f3cf4ef7852 in contextMenuEvent (event=0x7fffe4607eb0, this=0x2624720) at ../../kdeui/widgets/ktoolbar.cpp:873
Comment 14 Sandro Mani 2012-05-25 14:00:01 UTC
Created attachment 71360 [details]
New crash information added by DrKonqi

kopete (1.2.3) on KDE Platform 4.8.3 (4.8.3) using Qt 4.8.1

- What I was doing when the application crashed:
Rightlick on the kopete chat window toolbar.

- Unusual behavior I noticed:
Usually, my kopete chat window toolbar has four icons:
[Send File] [Add Smiley] [Show Participants] | [View History]

When the crash occured, I noticed that the last item ([View History]) was missing. The crash occured when I right-clicked on the toolbar, just right of the separator where the missing button should have been.

-- Backtrace (Reduced):
#6  0x0000003b1a944d5a in KToolBar::Private::findAction (this=<optimized out>, actionName=..., clientOut=0x0) at /usr/src/debug/kdelibs-4.8.3/kdeui/widgets/ktoolbar.cpp:548
#7  0x0000003b1a945407 in KToolBar::Private::slotContextAboutToShow (this=0x1c8c990) at /usr/src/debug/kdelibs-4.8.3/kdeui/widgets/ktoolbar.cpp:574
[...]
#9  0x0000003bc900e092 in QMenu::popup (this=0x2dcaa60, p=..., atAction=0x0) at widgets/qmenu.cpp:1832
#10 0x0000003bc900ebbd in QMenu::exec (this=0x2dcaa60, p=..., action=0x0) at widgets/qmenu.cpp:2110
#11 0x0000003b1a945372 in contextMenuEvent (event=0x7fff86c9bfb0, this=0x1ca0da0) at /usr/src/debug/kdelibs-4.8.3/kdeui/widgets/ktoolbar.cpp:873
Comment 15 Tomáš Chvátal 2012-06-01 18:16:59 UTC
Created attachment 71501 [details]
New crash information added by DrKonqi

lokalize (1.4) on KDE Platform 4.8.3 (4.8.3) using Qt 4.8.1

- What I was doing when the application crashed:

I right clicked on translation memory selection button in lokalize translation memory page.
I am not able to reproduce it every time but the backtrace seems quite nice.

-- Backtrace (Reduced):
#6  0x000003a20277450a in KToolBar::Private::findAction (this=<optimized out>, actionName=..., clientOut=0x0) at /var/tmp/portage/kde-base/kdelibs-4.8.3/work/kdelibs-4.8.3/kdeui/widgets/ktoolbar.cpp:548
#7  0x000003a202774bb7 in KToolBar::Private::slotContextAboutToShow (this=0x3a2043279a0) at /var/tmp/portage/kde-base/kdelibs-4.8.3/work/kdelibs-4.8.3/kdeui/widgets/ktoolbar.cpp:574
[...]
#9  0x000003a200d3bb70 in QMenu::popup (this=0x3a2069435e0, p=..., atAction=0x0) at widgets/qmenu.cpp:1832
#10 0x000003a200d3c73d in QMenu::exec (this=<optimized out>, p=..., action=0x0) at widgets/qmenu.cpp:2110
#11 0x000003a202774b22 in contextMenuEvent (event=0x3ffd5a1cf70, this=0x3a204326e70) at /var/tmp/portage/kde-base/kdelibs-4.8.3/work/kdelibs-4.8.3/kdeui/widgets/ktoolbar.cpp:873
Comment 16 Jekyll Wu 2012-06-09 18:18:58 UTC
*** Bug 298652 has been marked as a duplicate of this bug. ***
Comment 17 Jekyll Wu 2012-06-09 18:19:17 UTC
*** Bug 301509 has been marked as a duplicate of this bug. ***
Comment 18 Jekyll Wu 2012-06-09 18:22:45 UTC
*** Bug 300242 has been marked as a duplicate of this bug. ***
Comment 19 Jekyll Wu 2012-06-09 18:22:59 UTC
*** Bug 298939 has been marked as a duplicate of this bug. ***
Comment 20 Christoph Feck 2012-06-19 23:54:52 UTC
Albert, this is caused by commit 576e13d3. Cannot reproduce it, but maybe there need to be additional checks when accessing the clients/actions.
Comment 21 Albert Astals Cid 2012-06-20 22:20:46 UTC
Does anyone having know how to compile from source or use a debugger?
Comment 22 Albert Astals Cid 2012-06-20 22:27:02 UTC
Fixed sentece:
Does anyone having this problem know how to compile from source or use a debugger?
Comment 23 Daniel 2012-06-20 22:30:03 UTC
I dont necessarily know how to compile kate from source or use gdb but I do develop software for a living so some instructions would be fine for compiling, and i've used pdb before from cli so a general walk through of whats needed from gdb should suffice.
Comment 24 kavol 2012-06-21 09:52:54 UTC
(In reply to comment #22)
> Does anyone having this problem know how to compile from source

there used to be a nice howto on KDE webpages but I can't find it right now ... can someone post a link?

btw, would that be enough just to rebuild the Fedora package (possibly adding some patch if needed)? - that would be much easier ... oh, and Gentoo users (wink on Tomáš ;-) compile the sources all the time ...

> or use a debugger?

well, if you tell what's needed, we can try ...
Comment 25 Steven Sroka 2012-06-26 20:48:59 UTC
@Albert
I can compile from sources and use gdb. I can take a stab at whatever you want me to do.

One caveat though, I don't know very much about the Kate/Kile/KToolbar source code.
Comment 26 Albert Astals Cid 2012-06-26 21:11:45 UTC
Sorry for the delay guys, so here it comes a quick guide to compile kate from source
git clone git://anongit.kde.org/kate.git
cd kate
git checkout vX.Y.Z (where X.Y.Z is the kde version you are using, i.e. git checkout v4.8.3)
mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=debugfull
(Here you might need to install stuff to be able to build programs, in debian/ubuntu a apt-get build-dep kate will help, for other distros look around for help)
make
sudo make install (or su + make install if you don't have sudo) (WARNING this will overwrite your distruntion kate with the one you just compiled, you might want to reinstall the kate package afterwards to go back to normal)

Then do
gdb kate
run
(make kate crash)
once it crashes i'm interested in knowing the values of client and if client is not null of client->actionCollection(), for those less proficient with gdb do
print client
print client->actionCollection()

If you have problems with this instructions hop into irc.freenode.net irc network and look for tsdgeos (my nick) in the #kde-devel irc channel and we'll do "live debugging"
Comment 27 Daniel 2012-06-26 22:08:58 UTC
As requested via irc, here are steps to reproduce

From "Session" in menubar

save session as -> a
save session as -> b
quick open session -> a
quick open session -> b
quick open session -> a
quick open session -> b
right click menubar for popup
click off in doc area to dismiss popup
right click toolbar
crash
Comment 28 Steven Sroka 2012-06-27 15:26:25 UTC
Program received signal SIGSEGV, Segmentation fault.
0x00007ffff6470909 in KToolBar::Private::findAction (this=<optimized out>, 
    actionName=..., clientOut=0x0)
    at /chakra/desktop-unstable/kdelibs/src/kdelibs-4.8.90/kdeui/widgets/ktoolbar.cpp:548
548     /chakra/desktop-unstable/kdelibs/src/kdelibs-4.8.90/kdeui/widgets/ktoolbar.cpp: No such file or directory.
        in /chakra/desktop-unstable/kdelibs/src/kdelibs-4.8.90/kdeui/widgets/ktoolbar.cpp
(gdb) print client
$1 = (KXMLGUIClient *) 0xd68f88
(gdb) print client->actionCollection()
Cannot access memory at address 0x19
Comment 29 Xuepeng Fan 2012-06-27 16:01:40 UTC
Created attachment 72172 [details]
New crash information added by DrKonqi

kdevelop (4.3.1) on KDE Platform 4.8.3 (4.8.3) using Qt 4.8.1

- What I was doing when the application crashed:

I want to customize the toolbar at debug mode. I did what I did at code mode, right click on toolbar. The KDE is crashed. 

I tried serveral times and each time I did the samething it crashed again. I think it's reproducable.

-- Backtrace (Reduced):
#6  0x00007fa0cb12e53b in KActionCollection::action(QString const&) const () from /usr/lib/libkdeui.so.5
#7  0x00007fa0cb30f308 in KToolBar::Private::findAction(QString const&, KXMLGUIClient**) const () from /usr/lib/libkdeui.so.5
#8  0x00007fa0cb30f9a7 in KToolBar::Private::slotContextAboutToShow() () from /usr/lib/libkdeui.so.5
[...]
#10 0x00007fa0ca1e25e2 in QMenu::popup(QPoint const&, QAction*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#11 0x00007fa0ca1e310d in QMenu::exec(QPoint const&, QAction*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
Comment 30 Dietrich.Lolz 2012-06-27 19:22:30 UTC
Created attachment 72178 [details]
New crash information added by DrKonqi

kate (3.8.3) on KDE Platform 4.8.3 (4.8.3) using Qt 4.8.2

- What I was doing when the application crashed:

I did a right click on the kate's toolbar, it crashed twice in a row by doing that.

-- Backtrace (Reduced):
#5  0x00007f2b17dbea49 in KToolBar::Private::findAction(QString const&, KXMLGUIClient**) const () from /usr/lib/libkdeui.so.5
#6  0x00007f2b17dbf0e7 in KToolBar::Private::slotContextAboutToShow() () from /usr/lib/libkdeui.so.5
[...]
#8  0x00007f2b16507a50 in QMenu::popup(QPoint const&, QAction*) () from /usr/lib/libQtGui.so.4
#9  0x00007f2b16508524 in QMenu::exec(QPoint const&, QAction*) () from /usr/lib/libQtGui.so.4
#10 0x00007f2b17dbf052 in KToolBar::contextMenuEvent(QContextMenuEvent*) () from /usr/lib/libkdeui.so.5
Comment 31 Albert Astals Cid 2012-06-27 21:57:47 UTC
Ok, guys, no need for more information, i know what's wrong, just don't know how to fix it yet, hopefully next week at the kde meeting i can talk with david on how to fix it properly
Comment 32 Albert Astals Cid 2012-07-01 13:24:17 UTC
Git commit c6b4a45d2281a2b317a789693753544b64ffb59f by Albert Astals Cid.
Committed on 01/07/2012 at 11:06.
Pushed by aacid into branch 'KDE/4.9'.

Do not leave dangling pointers in KToolbar when xml clients die

Acked by dfaure

REVIEW: 105399
FIXED-IN: 4.9.0

M  +5    -0    kdeui/widgets/ktoolbar.cpp
M  +6    -0    kdeui/widgets/ktoolbar.h
M  +5    -0    kdeui/xmlgui/kxmlguifactory_p.cpp

http://commits.kde.org/kdelibs/c6b4a45d2281a2b317a789693753544b64ffb59f
Comment 33 Jekyll Wu 2012-07-06 15:53:40 UTC
*** Bug 301940 has been marked as a duplicate of this bug. ***
Comment 34 Jekyll Wu 2012-07-08 20:16:26 UTC
*** Bug 303207 has been marked as a duplicate of this bug. ***
Comment 35 Christoph Feck 2012-07-17 12:33:18 UTC
Please check if it is possible to backport the fix to 4.8 branch.
Comment 36 Albert Astals Cid 2012-07-17 18:21:46 UTC
Git commit 776098aae397b499a95d6855ef16f67eb8546598 by Albert Astals Cid.
Committed on 01/07/2012 at 11:06.
Pushed by aacid into branch 'KDE/4.8'.

Do not leave dangling pointers in KToolbar when xml clients die

Acked by dfaure

REVIEW: 105399
FIXED-IN: 4.8.5

M  +5    -0    kdeui/widgets/ktoolbar.cpp
M  +6    -0    kdeui/widgets/ktoolbar.h
M  +5    -0    kdeui/xmlgui/kxmlguifactory_p.cpp

http://commits.kde.org/kdelibs/776098aae397b499a95d6855ef16f67eb8546598
Comment 37 Christoph Feck 2012-07-20 15:57:34 UTC
*** Bug 303856 has been marked as a duplicate of this bug. ***
Comment 38 Jekyll Wu 2012-08-12 09:22:12 UTC
*** Bug 305003 has been marked as a duplicate of this bug. ***
Comment 39 Kevin Funk 2012-12-01 21:25:54 UTC
*** Bug 309288 has been marked as a duplicate of this bug. ***
Comment 40 Christoph Feck 2013-03-05 13:04:11 UTC
*** Bug 316167 has been marked as a duplicate of this bug. ***
Comment 41 Jekyll Wu 2013-04-11 00:46:49 UTC
*** Bug 306816 has been marked as a duplicate of this bug. ***
Comment 42 Simon Ball 2013-05-19 07:03:06 UTC
Created attachment 79961 [details]
New crash information added by DrKonqi

kdevelop (4.5.60) on KDE Platform 4.10.3 using Qt 4.8.4

- What I was doing when the application crashed:

I was configuring the toolbars in KDEvelop. I thought I had removed all of the buttons but, the save button was still showing so I right clicked on it and the program crashed. However, when the program restarted the save button was gone as intended.
Maybe this is to do with the fact the button "shouldn't have been there"

-- Backtrace (Reduced):
#5  0x00007f9a2ed6c5d1 in KToolBar::Private::findAction(QString const&, KXMLGUIClient**) const () from /usr/lib/libkdeui.so.5
#6  0x00007f9a2ed6c6cc in KToolBar::Private::slotContextAboutToShow() () from /usr/lib/libkdeui.so.5
[...]
#8  0x00007f9a2deadd6b in QMenu::popup(QPoint const&, QAction*) () from /usr/lib/libQtGui.so.4
#9  0x00007f9a2deb2213 in QMenu::exec(QPoint const&, QAction*) () from /usr/lib/libQtGui.so.4
#10 0x00007f9a2ed6dd48 in KToolBar::contextMenuEvent(QContextMenuEvent*) () from /usr/lib/libkdeui.so.5