[Konsole-devel] [Bug 289652] New: konsole crash after context menu incompletely shown

Frans Oilinki moilinki at gmail.com
Fri Dec 23 10:37:15 UTC 2011


https://bugs.kde.org/show_bug.cgi?id=289652

           Summary: konsole crash after context menu incompletely shown
           Product: konsole
           Version: 2.4.5
          Platform: Ubuntu Packages
        OS/Version: Linux
            Status: UNCONFIRMED
          Severity: crash
          Priority: NOR
         Component: general
        AssignedTo: konsole-devel at kde.org
        ReportedBy: moilinki at gmail.com


Application: konsole (2.4.5)
KDE Platform Version: 4.4.5 (KDE 4.4.5)
Qt Version: 4.6.2
Operating System: Linux 2.6.32-36-generic x86_64
Distribution: Ubuntu 10.04.3 LTS

-- Information about the crash:
Running Kubuntu 10.04, everything up-to-date.

I am not sure exactly what happened, because uncontrolled human factor was
involved (mouse mal-operated in crowded physical desk). But konsole is one of
the most awkward of software entities to crash (some many things can be lost
this way - I had about twenty important things going on in different windows
and tabs), so my wish and hope is that the stack trace is useful for spotting
potential bug and preventing this kind of thing happening to somebody else.

I think the crash involved starting to show a context menu, probably because of
pressing right mouse button, but not quite having enough time to draw it
completely and receiving some action due to my fingers stumbling on the mouse
button (too crowded desk and awkward body positions). My intention was copy
from one tab and paste to another. So this might be relevant here. Note that
some esoteric timing issue can also be involved here, e.g. receiving mouse
button event before some initialization finished --  due to my stock Ubuntu
Linux kernel having some scheduling/memory management related problems it
sometimes takes seconds to draw a simple menu even with relatively inactive
machine.

P.S. I think terminal application should be designed more resiliently. If many
tabs and windows are open, a crash should not bring everything down. Basically
I am advocating proper isolation of the terminal environments here (separate
processes, compare google chrome design).

Some people live through the terminal, with carefully constructed sets of ssh
sessions to different remote locations, software development with debugging and
testing organized to different tabs, longish running system adminstration
operations, ... Note also that some people (that at least includes me) like to
launch most of the programs (mplayer/pdf reader/libreoffice/...) from the
command line where current working directory works as a kind of bookmark and
can also be awkward to lose...  I stress again that for  such people it is one
of the most unbearable crashes to lose all the terminal sessions like this!!!

 -- Backtrace:
Application: Konsole (kdeinit4), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f99bd1a0760 (LWP 3880))]

Thread 2 (Thread 0x7f99a74a9700 (LWP 7619)):
#0  0x00007f99ba1acf93 in *__GI___poll (fds=<value optimized out>, nfds=<value
optimized out>, timeout=-1) at ../sysdeps/unix/sysv/linux/poll.c:87
#1  0x00007f99b6b714a9 in ?? () from /lib/libglib-2.0.so.0
#2  0x00007f99b6b718fc in g_main_context_iteration () from
/lib/libglib-2.0.so.0
#3  0x00007f99bb7b5566 in QEventDispatcherGlib::processEvents (this=0x22e2af0,
flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:414
#4  0x00007f99bb78a992 in QEventLoop::processEvents (this=<value optimized
out>, flags=) at kernel/qeventloop.cpp:149
#5  0x00007f99bb78ad6c in QEventLoop::exec (this=0x7f99a74a8db0, flags=) at
kernel/qeventloop.cpp:201
#6  0x00007f99bb694d59 in QThread::exec (this=<value optimized out>) at
thread/qthread.cpp:487
#7  0x00007f99bb76b178 in QInotifyFileSystemWatcherEngine::run (this=0x167a870)
at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007f99bb697775 in QThreadPrivate::start (arg=0x167a870) at
thread/qthread_unix.cpp:248
#9  0x00007f99bb4079ca in start_thread (arg=<value optimized out>) at
pthread_create.c:300
#10 0x00007f99ba1b970d in clone () at
../sysdeps/unix/sysv/linux/x86_64/clone.S:112
#11 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f99bd1a0760 (LWP 3880)):
[KCrash Handler]
#5  QBasicAtomicInt::operator!= (this=0x180f770, _t=@0x7fffe869fac8) at
../../include/QtCore/../../src/corelib/thread/qbasicatomic.h:75
#6  QList<QWidget*>::detachShared (this=0x180f770, _t=@0x7fffe869fac8) at
../../include/QtCore/../../src/corelib/tools/qlist.h:127
#7  QList<QWidget*>::removeAll (this=0x180f770, _t=@0x7fffe869fac8) at
../../include/QtCore/../../src/corelib/tools/qlist.h:662
#8  0x00007f99ba973b42 in QWidget::removeAction (this=0x44c8f60,
action=0x3ecd600) at kernel/qwidget.cpp:3014
#9  0x00007f99b031feca in
Konsole::SessionController::showDisplayContextMenu(QPoint const&) () from
/usr/lib/libkonsoleprivate.so
#10 0x00007f99b03213b1 in
Konsole::SessionController::qt_metacall(QMetaObject::Call, int, void**) () from
/usr/lib/libkonsoleprivate.so
#11 0x00007f99bb79ee3f in QMetaObject::activate (sender=0x1fe6310, m=<value
optimized out>, local_signal_index=<value optimized out>, argv=0x1) at
kernel/qobject.cpp:3293
#12 0x00007f99b032eae5 in Konsole::TerminalDisplay::configureRequest(QPoint
const&) () from /usr/lib/libkonsoleprivate.so
#13 0x00007f99b03351e2 in
Konsole::TerminalDisplay::mousePressEvent(QMouseEvent*) () from
/usr/lib/libkonsoleprivate.so
#14 0x00007f99ba97e569 in QWidget::event (this=0x1fe6310, event=0x7fffe86a06d0)
at kernel/qwidget.cpp:7994
#15 0x00007f99b032f62d in Konsole::TerminalDisplay::event(QEvent*) () from
/usr/lib/libkonsoleprivate.so
#16 0x00007f99ba92822c in QApplicationPrivate::notify_helper (this=0xdc6410,
receiver=0x1fe6310, e=0x7fffe86a06d0) at kernel/qapplication.cpp:4300
#17 0x00007f99ba92eecb in QApplication::notify (this=0x7fffe86a13d0,
receiver=0x1fe6310, e=0x7fffe86a06d0) at kernel/qapplication.cpp:3865
#18 0x00007f99bbcd3a16 in KApplication::notify (this=0x7fffe86a13d0,
receiver=0x1fe6310, event=0x7fffe86a06d0) at
../../kdeui/kernel/kapplication.cpp:302
#19 0x00007f99bb78c06c in QCoreApplication::notifyInternal
(this=0x7fffe86a13d0, receiver=0x1fe6310, event=0x7fffe86a06d0) at
kernel/qcoreapplication.cpp:704
#20 0x00007f99ba92e0ae in QCoreApplication::sendEvent (receiver=0x1fe6310,
event=0x7fffe86a06d0, alienWidget=0x1fe6310, nativeWidget=0x1dae3a0,
buttonDown=<value optimized out>, 
    lastMouseReceiver=<value optimized out>, spontaneous=true) at
../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#21 QApplicationPrivate::sendMouseEvent (receiver=0x1fe6310,
event=0x7fffe86a06d0, alienWidget=0x1fe6310, nativeWidget=0x1dae3a0,
buttonDown=<value optimized out>, 
    lastMouseReceiver=<value optimized out>, spontaneous=true) at
kernel/qapplication.cpp:2965
#22 0x00007f99ba9adf65 in QETWidget::translateMouseEvent (this=0x1dae3a0,
event=<value optimized out>) at kernel/qapplication_x11.cpp:4368
#23 0x00007f99ba9ac8ac in QApplication::x11ProcessEvent (this=<value optimized
out>, event=0x7fffe86a0ff0) at kernel/qapplication_x11.cpp:3501
#24 0x00007f99ba9d8882 in x11EventSourceDispatch (s=0xdc9cd0, callback=<value
optimized out>, user_data=<value optimized out>) at
kernel/qguieventdispatcher_glib.cpp:146
#25 0x00007f99b6b6d8c2 in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#26 0x00007f99b6b71748 in ?? () from /lib/libglib-2.0.so.0
#27 0x00007f99b6b718fc in g_main_context_iteration () from
/lib/libglib-2.0.so.0
#28 0x00007f99bb7b5513 in QEventDispatcherGlib::processEvents (this=0xd39140,
flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:412
#29 0x00007f99ba9d846e in QGuiEventDispatcherGlib::processEvents
(this=0x180f770, flags=<value optimized out>) at
kernel/qguieventdispatcher_glib.cpp:204
#30 0x00007f99bb78a992 in QEventLoop::processEvents (this=<value optimized
out>, flags=) at kernel/qeventloop.cpp:149
#31 0x00007f99bb78ad6c in QEventLoop::exec (this=0x7fffe86a1320, flags=) at
kernel/qeventloop.cpp:201
#32 0x00007f99bb78eaab in QCoreApplication::exec () at
kernel/qcoreapplication.cpp:981
#33 0x00007f99b058de66 in kdemain () from /usr/lib/libkdeinit4_konsole.so
#34 0x00000000004070f3 in launch (argc=3, _name=<value optimized out>,
args=<value optimized out>, cwd=<value optimized out>, envc=24, envs=<value
optimized out>, reset_env=false, tty=0x0, 
    avoid_loops=false, startup_id_str=0x40a4f9 "0") at
../../kinit/kinit.cpp:717
#35 0x0000000000407cb0 in handle_launcher_request (sock=8, who=<value optimized
out>) at ../../kinit/kinit.cpp:1209
#36 0x000000000040823a in handle_requests (waitForPid=0) at
../../kinit/kinit.cpp:1402
#37 0x0000000000408e22 in main (argc=4, argv=<value optimized out>, envp=<value
optimized out>) at ../../kinit/kinit.cpp:1845

Reported using DrKonqi

-- 
Configure bugmail: https://bugs.kde.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.



More information about the konsole-devel mailing list