Bug 223720 - [testcase] double click on empty tab space crash
Summary: [testcase] double click on empty tab space crash
Status: CLOSED FIXED
Alias: None
Product: konsole
Classification: Applications
Component: general (show other bugs)
Version: 2.4.99
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: Konsole Developer
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-01-21 23:12 UTC by David Palacio
Modified: 2010-02-25 18:04 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description David Palacio 2010-01-21 23:12:20 UTC
Application: konsole (2.4.99)
KDE Platform Version: 4.4.60 (KDE 4.4.60 (KDE 4.5 >= 20100120)) (Compiled from sources)
Qt Version: 4.6.0
Operating System: Linux 2.6.26-2-amd64 x86_64
Distribution: Debian GNU/Linux 5.0.3 (lenny)

-- Information about the crash:
When the empty space on tab bar is small enough, Konsole will SEGFAULT.

Testcase:
1. Open a new tab on tabbar empty space (by double clicking).
2. Goto 1.

The crash can be reproduced every time.

 -- Backtrace:
Application: Konsole (kdeinit4), signal: Segmentation fault
[Current thread is 0 (LWP 30926)]

Thread 2 (Thread 0x4265b950 (LWP 30951)):
#0  0x00007fd34eff5b56 in poll () from /lib/libc.so.6
#1  0x00007fd34be65239 in ?? () from /lib/libglib-2.0.so.0
#2  0x00007fd34be6552c in g_main_context_iteration () from /lib/libglib-2.0.so.0
#3  0x00007fd350d3f576 in QEventDispatcherGlib::processEvents (this=0x1540380, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:409
#4  0x00007fd350d13512 in QEventLoop::processEvents (this=<value optimized out>, flags={i = 1113960384}) at kernel/qeventloop.cpp:149
#5  0x00007fd350d138e4 in QEventLoop::exec (this=0x4265b000, flags={i = 1113960480}) at kernel/qeventloop.cpp:201
#6  0x00007fd350c1b847 in QThread::exec (this=<value optimized out>) at thread/qthread.cpp:487
#7  0x00007fd350cf3dc8 in QInotifyFileSystemWatcherEngine::run (this=0x17617b0) at io/qfilesystemwatcher_inotify.cpp:248
#8  0x00007fd350c1e425 in QThreadPrivate::start (arg=0x17617b0) at thread/qthread_unix.cpp:244
#9  0x00007fd35097efc7 in start_thread () from /lib/libpthread.so.0
#10 0x00007fd34effe59d in clone () from /lib/libc.so.6
#11 0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7fd352e0f780 (LWP 30926)):
[KCrash Handler]
#5  QTabWidget::cornerWidget (this=0x0, corner=Qt::TopLeftCorner) at widgets/qtabwidget.h:237
#6  0x00007fd34381e8a4 in OxygenStyle::drawToolButtonPrimitive (this=0x11bc640, primitive=<value optimized out>, opt=<value optimized out>, r=@0x7fff9811b030, pal=@0x7fff9811ab00, flags=
      {i = -1743672528}, p=0x7fff9811ba40, widget=0x12dea20, kOpt=0x0) at /home/kde/src/KDE/kdebase/runtime/kstyles/oxygen/oxygen.cpp:2805
#7  0x00007fd34381a621 in OxygenStyle::drawKStylePrimitive (this=0x11bc640, widgetType=<value optimized out>, primitive=0, opt=0x7fff9811b650, r=@0x7fff9811b030, palette=@0x7fff9811b020, flags=
      {i = -1743671072}, p=0x7fff9811ba40, widget=0x12dea20, kOpt=0x0) at /home/kde/src/KDE/kdebase/runtime/kstyles/oxygen/oxygen.cpp:690
#8  0x00007fd3514f83ec in KStyle::drawPrimitive (this=0x11bc640, elem=QStyle::PE_PanelButtonTool, option=0x7fff9811b650, painter=0x7fff9811ba40, widget=0x12dea20)
    at /home/kde/src/KDE/kdelibs/kdeui/kernel/kstyle.cpp:1183
#9  0x00007fd34381af5d in OxygenStyle::drawPrimitive (this=0x11bc640, element=QStyle::PE_Q3CheckListController, option=0x7fff9811b650, p=0x7fff9811ba40, widget=0x12dea20)
    at /home/kde/src/KDE/kdebase/runtime/kstyles/oxygen/oxygen.cpp:446
#10 0x00007fd3514f0dff in KStyle::drawComplexControl (this=0x11bc640, cc=<value optimized out>, opt=0x7fff9811b9c0, p=0x7fff9811ba40, w=0x12dea20)
    at /home/kde/src/KDE/kdelibs/kdeui/kernel/kstyle.cpp:3432
#11 0x00007fd3500b3fa8 in QToolButton::paintEvent (this=0x12dea20) at ../../include/QtGui/../../src/gui/painting/qstylepainter.h:94
#12 0x00007fd34fc773f1 in QWidget::event (this=0x12dea20, event=0x7fff9811c230) at kernel/qwidget.cpp:8120
#13 0x00007fd34fc2012d in QApplicationPrivate::notify_helper (this=0x11712c0, receiver=0x12dea20, e=0x7fff9811c230) at kernel/qapplication.cpp:4242
#14 0x00007fd34fc266ca in QApplication::notify (this=0x7fff9811edd0, receiver=0x12dea20, e=0x7fff9811c230) at kernel/qapplication.cpp:4125
#15 0x00007fd3514e1b3b in KApplication::notify (this=0x7fff9811edd0, receiver=0x12dea20, event=0x7fff9811c230) at /home/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:302
#16 0x00007fd350d14c4c in QCoreApplication::notifyInternal (this=0x7fff9811edd0, receiver=0x12dea20, event=0x7fff9811c230) at kernel/qcoreapplication.cpp:704
#17 0x00007fd34fc7f621 in QWidgetPrivate::drawWidget (this=0x12dea60, pdev=0x12cfe28, rgn=@0x7fff9811c5b0, offset=@0x7fff9811c5a0, flags=<value optimized out>, sharedPainter=0x0, 
    backingStore=0x1122af0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:218
#18 0x00007fd34fc7ffe3 in QWidgetPrivate::paintSiblingsRecursive (this=0x12de640, pdev=0x12cfe28, siblings=@0x12de658, index=0, rgn=@0x7fff9811c7a0, offset=@0x7fff9811cbf0, flags=4, 
    sharedPainter=0x0, backingStore=0x1122af0) at kernel/qwidget.cpp:5435
#19 0x00007fd34fc7fe0d in QWidgetPrivate::paintSiblingsRecursive (this=0x12de640, pdev=0x12cfe28, siblings=@0x12de658, index=1, rgn=@0x7fff9811cc00, offset=@0x7fff9811cbf0, flags=4, 
    sharedPainter=0x0, backingStore=0x1122af0) at kernel/qwidget.cpp:5422
#20 0x00007fd34fc7f0eb in QWidgetPrivate::drawWidget (this=0x12de640, pdev=0x12cfe28, rgn=@0x7fff9811cc00, offset=@0x7fff9811cbf0, flags=4, sharedPainter=0x0, backingStore=0x1122af0)
    at kernel/qwidget.cpp:5371
#21 0x00007fd34fc7ffe3 in QWidgetPrivate::paintSiblingsRecursive (this=0x12dde50, pdev=0x12cfe28, siblings=@0x12dde68, index=0, rgn=@0x7fff9811cdf0, offset=@0x7fff9811d240, flags=4, 
    sharedPainter=0x0, backingStore=0x1122af0) at kernel/qwidget.cpp:5435
#22 0x00007fd34fc7fe0d in QWidgetPrivate::paintSiblingsRecursive (this=0x12dde50, pdev=0x12cfe28, siblings=@0x12dde68, index=5, rgn=@0x7fff9811d250, offset=@0x7fff9811d240, flags=4, 
    sharedPainter=0x0, backingStore=0x1122af0) at kernel/qwidget.cpp:5422
#23 0x00007fd34fc7f0eb in QWidgetPrivate::drawWidget (this=0x12dde50, pdev=0x12cfe28, rgn=@0x7fff9811d250, offset=@0x7fff9811d240, flags=4, sharedPainter=0x0, backingStore=0x1122af0)
    at kernel/qwidget.cpp:5371
#24 0x00007fd34fc7ffe3 in QWidgetPrivate::paintSiblingsRecursive (this=0x12ae370, pdev=0x12cfe28, siblings=@0x12ae388, index=0, rgn=@0x7fff9811d6b0, offset=@0x7fff9811d6a0, flags=4, 
    sharedPainter=0x0, backingStore=0x1122af0) at kernel/qwidget.cpp:5435
#25 0x00007fd34fc7f0eb in QWidgetPrivate::drawWidget (this=0x12ae370, pdev=0x12cfe28, rgn=@0x7fff9811d6b0, offset=@0x7fff9811d6a0, flags=4, sharedPainter=0x0, backingStore=0x1122af0)
    at kernel/qwidget.cpp:5371
#26 0x00007fd34fc7ffe3 in QWidgetPrivate::paintSiblingsRecursive (this=0x1256c80, pdev=0x12cfe28, siblings=@0x1256c98, index=1, rgn=@0x7fff9811db10, offset=@0x7fff9811db00, flags=4, 
    sharedPainter=0x0, backingStore=0x1122af0) at kernel/qwidget.cpp:5435
#27 0x00007fd34fc7f0eb in QWidgetPrivate::drawWidget (this=0x1256c80, pdev=0x12cfe28, rgn=@0x7fff9811db10, offset=@0x7fff9811db00, flags=4, sharedPainter=0x0, backingStore=0x1122af0)
    at kernel/qwidget.cpp:5371
#28 0x00007fd34fc7ffe3 in QWidgetPrivate::paintSiblingsRecursive (this=0x11d3100, pdev=0x12cfe28, siblings=@0x11d3118, index=10, rgn=@0x7fff9811e0f0, offset=@0x1122b34, flags=4, sharedPainter=0x0, 
    backingStore=0x1122af0) at kernel/qwidget.cpp:5435
#29 0x00007fd34fc7f0eb in QWidgetPrivate::drawWidget (this=0x11d3100, pdev=0x12cfe28, rgn=@0x7fff9811e0f0, offset=@0x1122b34, flags=4, sharedPainter=0x0, backingStore=0x1122af0)
    at kernel/qwidget.cpp:5371
#30 0x00007fd34fe3bd09 in QWidgetBackingStore::sync (this=0x1122af0) at painting/qbackingstore.cpp:1289
#31 0x00007fd34fc70340 in QWidgetPrivate::syncBackingStore (this=0x11d3100) at kernel/qwidget.cpp:1662
#32 0x00007fd34fc77b0d in QWidget::event (this=0x11e7450, event=0x1ae4080) at kernel/qwidget.cpp:8266
#33 0x00007fd35004683b in QMainWindow::event (this=0x11e7450, event=0x1ae4080) at widgets/qmainwindow.cpp:1434
#34 0x00007fd3515faa38 in KXmlGuiWindow::event (this=0x0, ev=0x0) at /home/kde/src/KDE/kdelibs/kdeui/xmlgui/kxmlguiwindow.cpp:131
#35 0x00007fd34fc2012d in QApplicationPrivate::notify_helper (this=0x11712c0, receiver=0x11e7450, e=0x1ae4080) at kernel/qapplication.cpp:4242
#36 0x00007fd34fc266ca in QApplication::notify (this=0x7fff9811edd0, receiver=0x11e7450, e=0x1ae4080) at kernel/qapplication.cpp:4125
#37 0x00007fd3514e1b3b in KApplication::notify (this=0x7fff9811edd0, receiver=0x11e7450, event=0x1ae4080) at /home/kde/src/KDE/kdelibs/kdeui/kernel/kapplication.cpp:302
#38 0x00007fd350d14c4c in QCoreApplication::notifyInternal (this=0x7fff9811edd0, receiver=0x11e7450, event=0x1ae4080) at kernel/qcoreapplication.cpp:704
#39 0x00007fd350d15b74 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x10d6d00) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#40 0x00007fd350d3fa03 in postEventSourceDispatch (s=<value optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#41 0x00007fd34be61aca in g_main_context_dispatch () from /lib/libglib-2.0.so.0
#42 0x00007fd34be65368 in ?? () from /lib/libglib-2.0.so.0
#43 0x00007fd34be6552c in g_main_context_iteration () from /lib/libglib-2.0.so.0
#44 0x00007fd350d3f55c in QEventDispatcherGlib::processEvents (this=0x116fe70, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:407
#45 0x00007fd34fcd275f in QGuiEventDispatcherGlib::processEvents (this=0x0, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:202
#46 0x00007fd350d13512 in QEventLoop::processEvents (this=<value optimized out>, flags={i = -1743655712}) at kernel/qeventloop.cpp:149
#47 0x00007fd350d138e4 in QEventLoop::exec (this=0x7fff9811ed20, flags={i = -1743655632}) at kernel/qeventloop.cpp:201
#48 0x00007fd350d15df6 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:981
#49 0x00007fd344c6cd31 in kdemain (argc=1, argv=0x1125360) at /home/kde/src/KDE/kdebase/apps/konsole/src/main.cpp:77
#50 0x00000000004074e7 in launch (argc=1, _name=0x1125d88 "/home/kde/KDE/bin/konsole", args=<value optimized out>, cwd=0x0, envc=1, envs=0x1125db6 "", reset_env=false, tty=0x0, avoid_loops=false, 
    startup_id_str=0x1125dbf "sun;1264111752;596160;3674_TIME19874296") at /home/kde/src/KDE/kdelibs/kinit/kinit.cpp:706
#51 0x0000000000407cc8 in handle_launcher_request (sock=8, who=<value optimized out>) at /home/kde/src/KDE/kdelibs/kinit/kinit.cpp:1198
#52 0x000000000040825e in handle_requests (waitForPid=0) at /home/kde/src/KDE/kdelibs/kinit/kinit.cpp:1391
#53 0x000000000040896b in main (argc=4, argv=0x7fff9811fdd8, envp=0x7fff9811fe00) at /home/kde/src/KDE/kdelibs/kinit/kinit.cpp:1830

Reported using DrKonqi
Comment 1 Kurt Hindenburg 2010-01-22 16:03:01 UTC
How many tabs do you have open before you get the crash?  The <> arrows made it hard to click on empty stop.

Do you have the new/close tab button shown?
Comment 2 David Palacio 2010-01-22 18:20:51 UTC
It ranges from 2-8, depends on the window width. I do not see the <> arrows. I guess that is what I am supposed to see instead of Konsole crashing.
Comment 3 David Palacio 2010-01-22 18:24:16 UTC
No new/close button
Comment 4 Kurt Hindenburg 2010-01-24 02:09:14 UTC
If you keep opening new tabs, you should get <> arrows on the right side next to the tabs.

Are you running the default appearance/styles/etc?
Comment 5 Christoph Feck 2010-01-31 02:59:05 UTC
This is fixed in r1077860.