Summary: | konsole crashes when closing a tab | ||
---|---|---|---|
Product: | [Applications] konsole | Reporter: | Lukas <lukas> |
Component: | general | Assignee: | Konsole Developer <konsole-devel> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | a.samirh78, archfoe, dtsulik, grzegorz.alibozek, lso, luizluca, mrdoctorwho, nate, the.true.nathan.mills |
Priority: | NOR | Keywords: | drkonqi |
Version: | 19.08.0 | ||
Target Milestone: | --- | ||
Platform: | Debian stable | ||
OS: | Linux | ||
Latest Commit: | https://invent.kde.org/utilities/konsole/commit/39d3437df95b4fedbafa8f09d64f9c482feed551 | Version Fixed In: | 21.12 |
Attachments: |
New crash information added by DrKonqi
New crash information added by DrKonqi |
Description
Lukas
2019-09-16 11:33:15 UTC
Created attachment 123578 [details]
New crash information added by DrKonqi
konsole (19.08.2) using Qt 5.13.1
I close tabs using ctrl + shift + w and konsole has beed crashed
I had frozen ssh sessions
-- Backtrace (Reduced):
#6 0x00007fb967fc918e in QWidget::setFocus(Qt::FocusReason) () from /usr/lib/libQt5Widgets.so.5
[...]
#8 0x00007fb968b8a163 in Konsole::TabbedViewContainer::activeViewChanged(Konsole::TerminalDisplay*) () from /usr/lib/libkonsoleprivate.so.19
#9 0x00007fb968c3a9bd in Konsole::TabbedViewContainer::currentTabChanged(int) () from /usr/lib/libkonsoleprivate.so.19
[...]
#11 0x00007fb9681683cf in QTabWidget::currentChanged(int) () from /usr/lib/libQt5Widgets.so.5
[...]
#14 0x00007fb9681482af in QTabBar::currentChanged(int) () from /usr/lib/libQt5Widgets.so.5
Created attachment 123961 [details]
New crash information added by DrKonqi
konsole (19.08.3) using Qt 5.13.2
- What I was doing when the application crashed:
if you have a frozen ssh session and close the card with the shortcut ctrl + shift + w, crash occurs
-- Backtrace (Reduced):
#6 0x00007fe7863a217e in QWidget::setFocus(Qt::FocusReason) () from /usr/lib/libQt5Widgets.so.5
[...]
#8 0x00007fe786f67163 in Konsole::TabbedViewContainer::activeViewChanged(Konsole::TerminalDisplay*) () from /usr/lib/libkonsoleprivate.so.19
#9 0x00007fe7870179ed in Konsole::TabbedViewContainer::currentTabChanged(int) () from /usr/lib/libkonsoleprivate.so.19
[...]
#11 0x00007fe78654146f in QTabWidget::currentChanged(int) () from /usr/lib/libQt5Widgets.so.5
[...]
#14 0x00007fe78652135f in QTabBar::currentChanged(int) () from /usr/lib/libQt5Widgets.so.5
*** Bug 429486 has been marked as a duplicate of this bug. *** *** Bug 424342 has been marked as a duplicate of this bug. *** *** Bug 425775 has been marked as a duplicate of this bug. *** *** Bug 423984 has been marked as a duplicate of this bug. *** *** Bug 434194 has been marked as a duplicate of this bug. *** *** Bug 440512 has been marked as a duplicate of this bug. *** From bug 424342: Thread 1 (Thread 0x7f68370f6080 (LWP 3066)): [KCrash Handler] #6 QWidget::testAttribute (attribute=<optimized out>, this=<optimized out>) at ../../include/QtWidgets/../../src/widgets/kernel/qwidget.h:868 #7 QWidget::isEnabled (this=0x0) at ../../include/QtWidgets/../../src/widgets/kernel/qwidget.h:767 #8 QWidget::setFocus (this=0x0, reason=Qt::OtherFocusReason) at kernel/qwidget.cpp:6516 #9 0x00007f683b209458 in QtPrivate::QSlotObjectBase::call (a=0x7ffdf9b82f70, r=0x55d5ab952830, this=0x55d5ab96d730) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394 #10 QMetaObject::activate (sender=0x55d5ab9529c0, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3784 #11 0x00007f683c803fb6 in Konsole::TabbedViewContainer::activeViewChanged(Konsole::TerminalDisplay*) () from /usr/lib/x86_64-linux-gnu/libkonsoleprivate.so.19 #12 0x00007f683c8b5d4d in Konsole::TabbedViewContainer::currentTabChanged(int) () from /usr/lib/x86_64-linux-gnu/libkonsoleprivate.so.19 #13 0x00007f683b209458 in QtPrivate::QSlotObjectBase::call (a=0x7ffdf9b830c0, r=0x55d5ab9529c0, this=0x55d5ab95b6e0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394 #14 QMetaObject::activate (sender=0x55d5ab9529c0, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3784 #15 0x00007f683bdcdd32 in QTabWidget::currentChanged (this=<optimized out>, _t1=<optimized out>) at .moc/moc_qtabwidget.cpp:325 #16 0x00007f683bdd0292 in QTabWidget::qt_static_metacall (_o=<optimized out>, _c=<optimized out>, _id=<optimized out>, _a=<optimized out>) at widgets/qtabwidget.h:175 #17 0x00007f683b209300 in QMetaObject::activate (sender=0x55d5ab9569c0, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3804 #18 0x00007f683bdae632 in QTabBar::currentChanged (this=this@entry=0x55d5ab9569c0, _t1=<optimized out>, _t1@entry=15) at .moc/moc_qtabbar.cpp:337 #19 0x00007f683bdb2dfc in QTabBar::setCurrentIndex (this=0x55d5ab9569c0, index=15) at widgets/qtabbar.cpp:1383 and bug 440512 has a similar backtrace (the other duplicates mostly have incomplete backtraces). A possibly relevant merge request was started @ https://invent.kde.org/utilities/konsole/-/merge_requests/450 (So, this could be the same as bug 424342 and bug 440512, or it could a different issue, the backtrace isn't as complete, i.e. I don't see QWidget::setFocus (this=0x0, reason=Qt::OtherFocusReason) here, but I would say it's probably the same issue). Git commit 39d3437df95b4fedbafa8f09d64f9c482feed551 by Tomaz Canabrava, on behalf of Ahmad Samir. Committed on 05/08/2021 at 09:17. Pushed by tcanabrava into branch 'master'. Fix crash when closing a tab using the close button Looking at the crash backtraces from the bug reports, it seems this is what happens, when you have two tabs open, then click the close button on the non-current tab: - QTabBar::currentChanged() is emitted, the TerminalDisplay pointer is still not null at this point (the code checks for that) - TabbedViewContainer::currentTabChanged() - TabbedViewContainer::activeViewChanged() - ViewManager::activateView(), at this point the TerminalDisplay pointer could be null, which then crashes when we call Widget::setFocus() FIXED-IN: 21.12 M +6 -6 src/ViewManager.cpp https://invent.kde.org/utilities/konsole/commit/39d3437df95b4fedbafa8f09d64f9c482feed551 |