Bug 412173 - crash after system upgrade opening new tab in blank Konsole window
Summary: crash after system upgrade opening new tab in blank Konsole window
Status: RESOLVED FIXED
Alias: None
Product: konsole
Classification: Applications
Component: general (show other bugs)
Version: 19.08.0
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: ---
Assignee: Konsole Developer
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2019-09-21 22:58 UTC by skierpage
Modified: 2019-10-06 14:34 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 19.08.2


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description skierpage 2019-09-21 22:58:39 UTC
Application: konsole (19.08.0)

Qt Version: 5.12.4
Frameworks Version: 5.61.0
Operating System: Linux 5.3.0-1.fc31.x86_64 x86_64
Distribution: "Fedora release 31 (Thirty One)"

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

When I ran `sudo dnf system-upgrade reboot` to upgrade to Fedora 31 beta, I had a Konsole window with three white on black tabs open. When the upgrade completed and KDE restarted (nice and smooth, well done!), Konsole reappeared but with a blank white window containing no tabs. I was able to create a new Konsole window but when I created a new tab in the blank window (I think with File > New Tab), crash!

- Unusual behavior I noticed:

As above, I've never seen a Konsole window with no shell or tab in it.

-- Backtrace:
Application: Konsole (konsole), signal: Segmentation fault
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f562b96a840 (LWP 239947))]

Thread 4 (Thread 0x7f561690c700 (LWP 239978)):
#0  0x00007f562e8f1d45 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007f5616df705b in util_queue_thread_func () from /usr/lib64/dri/i965_dri.so
#2  0x00007f5616df6c6b in impl_thrd_routine () from /usr/lib64/dri/i965_dri.so
#3  0x00007f562e8eb4e2 in start_thread () from /lib64/libpthread.so.0
#4  0x00007f56312e6643 in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7f561cef2700 (LWP 239958)):
#0  0x00007f562e06c9e8 in g_mutex_unlock () from /lib64/libglib-2.0.so.0
#1  0x00007f562e0201f1 in g_main_context_check () from /lib64/libglib-2.0.so.0
#2  0x00007f562e020742 in g_main_context_iterate.isra () from /lib64/libglib-2.0.so.0
#3  0x00007f562e0208d3 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#4  0x00007f562fb79bd3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#5  0x00007f562fb239db in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#6  0x00007f562f97c625 in QThread::exec() () from /lib64/libQt5Core.so.5
#7  0x00007f562f06bf4a in QDBusConnectionManager::run() () from /lib64/libQt5DBus.so.5
#8  0x00007f562f97d776 in QThreadPrivate::start(void*) () from /lib64/libQt5Core.so.5
#9  0x00007f562e8eb4e2 in start_thread () from /lib64/libpthread.so.0
#10 0x00007f56312e6643 in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7f561e679700 (LWP 239956)):
#0  0x00007f56312dba1f in poll () from /lib64/libc.so.6
#1  0x00007f562e91638a in _xcb_conn_wait () from /lib64/libxcb.so.1
#2  0x00007f562e917fea in xcb_wait_for_event () from /lib64/libxcb.so.1
#3  0x00007f561e843be8 in QXcbEventQueue::run() () from /lib64/libQt5XcbQpa.so.5
#4  0x00007f562f97d776 in QThreadPrivate::start(void*) () from /lib64/libQt5Core.so.5
#5  0x00007f562e8eb4e2 in start_thread () from /lib64/libpthread.so.0
#6  0x00007f56312e6643 in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7f562b96a840 (LWP 239947)):
[KCrash Handler]
#6  0x00007f5631188814 in Konsole::ViewSplitter::getToplevelSplitter() () from /lib64/libkonsoleprivate.so.19
#7  0x00007f563117f0eb in Konsole::ViewManager::switchToTerminalDisplay(Konsole::TerminalDisplay*) () from /lib64/libkonsoleprivate.so.19
#8  0x00007f56311841aa in Konsole::ViewManager::focusAnotherTerminal(Konsole::ViewSplitter*) () from /lib64/libkonsoleprivate.so.19
#9  0x00007f563118439b in Konsole::ViewManager::sessionFinished() () from /lib64/libkonsoleprivate.so.19
#10 0x00007f562fb4eea0 in QMetaObject::activate(QObject*, int, int, void**) () from /lib64/libQt5Core.so.5
#11 0x00007f56311491e7 in Konsole::Session::done(int, QProcess::ExitStatus) () from /lib64/libkonsoleprivate.so.19
#12 0x00007f562fb4eea0 in QMetaObject::activate(QObject*, int, int, void**) () from /lib64/libQt5Core.so.5
#13 0x00007f562faaf7e3 in QProcess::finished(int, QProcess::ExitStatus) () from /lib64/libQt5Core.so.5
#14 0x00007f562fab5a53 in QProcessPrivate::_q_processDied() () from /lib64/libQt5Core.so.5
#15 0x00007f562fab5c32 in QProcess::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) () from /lib64/libQt5Core.so.5
#16 0x00007f562fb4ed5b in QMetaObject::activate(QObject*, int, int, void**) () from /lib64/libQt5Core.so.5
#17 0x00007f562fb5afac in QSocketNotifier::activated(int, QSocketNotifier::QPrivateSignal) () from /lib64/libQt5Core.so.5
#18 0x00007f562fb5b311 in QSocketNotifier::event(QEvent*) () from /lib64/libQt5Core.so.5
#19 0x00007f5630486af6 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#20 0x00007f563048fe80 in QApplication::notify(QObject*, QEvent*) () from /lib64/libQt5Widgets.so.5
#21 0x00007f562fb24ad8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /lib64/libQt5Core.so.5
#22 0x00007f562fb7a567 in socketNotifierSourceDispatch(_GSource*, int (*)(void*), void*) () from /lib64/libQt5Core.so.5
#23 0x00007f562e0204a0 in g_main_context_dispatch () from /lib64/libglib-2.0.so.0
#24 0x00007f562e020830 in g_main_context_iterate.isra () from /lib64/libglib-2.0.so.0
#25 0x00007f562e0208d3 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#26 0x00007f562fb79bd3 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#27 0x00007f562fb239db in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /lib64/libQt5Core.so.5
#28 0x00007f562fb2b706 in QCoreApplication::exec() () from /lib64/libQt5Core.so.5
#29 0x00007f56313e1456 in kdemain () from /lib64/libkdeinit5_konsole.so
#30 0x00007f563120c1a3 in __libc_start_main () from /lib64/libc.so.6
#31 0x00005607c81450ae in _start ()
[Inferior 1 (process 239947) detached]

Reported using DrKonqi
Comment 1 Wolfgang Bauer 2019-09-22 07:54:06 UTC
Should be fixed by https://cgit.kde.org/konsole.git/commit/?h=Applications/19.08&id=1df621390e82603794c46337821f9bf83b1ee369 (in 19.08.1).

Although, the previous session still won't be properly restored from konsole <= 19.04, there's a patch mentioned in https://phabricator.kde.org/D23601 (https://salsa.debian.org/qt-kde-team/kde/konsole/commit/f07e71f72b2c464d1559b57e9ed2d5c5f6bf1f1b?merge_request_iid=2) that would fix that too.
Comment 2 Kurt Hindenburg 2019-10-06 14:32:17 UTC
Git commit 2de43394c98364edd48fb74bbaa467d5d281d445 by Kurt Hindenburg, on behalf of Jiří Paleček.
Committed on 06/10/2019 at 14:31.
Pushed by hindenburg into branch 'master'.

Allow loading of pre 19.08 session files

The format of the Konsole session file changed with 19.08. This was
overlooked and pre 19.08 files caused crashes.  That crash was fixed
in 19.08.1 to just start the default profile.
This patch will allow pre 19.08 session files to be loaded correctly.
FIXED-IN: 19.08.2

M  +34   -1    src/ViewManager.cpp

https://invent.kde.org/kde/konsole/commit/2de43394c98364edd48fb74bbaa467d5d281d445
Comment 3 Kurt Hindenburg 2019-10-06 14:32:23 UTC
Git commit 2de43394c98364edd48fb74bbaa467d5d281d445 by Kurt Hindenburg, on behalf of Jiří Paleček.
Committed on 06/10/2019 at 14:31.
Pushed by scmsync into branch 'master'.

Allow loading of pre 19.08 session files

The format of the Konsole session file changed with 19.08. This was
overlooked and pre 19.08 files caused crashes.  That crash was fixed
in 19.08.1 to just start the default profile.
This patch will allow pre 19.08 session files to be loaded correctly.
FIXED-IN: 19.08.2

M  +34   -1    src/ViewManager.cpp

https://commits.kde.org/konsole/2de43394c98364edd48fb74bbaa467d5d281d445
Comment 4 Kurt Hindenburg 2019-10-06 14:33:59 UTC
Git commit 1561f6203bbf5e97cc23e36200e68486f3decac0 by Kurt Hindenburg, on behalf of Jiří Paleček.
Committed on 06/10/2019 at 14:33.
Pushed by hindenburg into branch 'Applications/19.08'.

Allow loading of pre 19.08 session files

The format of the Konsole session file changed with 19.08. This was
overlooked and pre 19.08 files caused crashes.  That crash was fixed
in 19.08.1 to just start the default profile.
This patch will allow pre 19.08 session files to be loaded correctly.
FIXED-IN: 19.08.2
(cherry picked from commit 2de43394c98364edd48fb74bbaa467d5d281d445)

M  +34   -1    src/ViewManager.cpp

https://invent.kde.org/kde/konsole/commit/1561f6203bbf5e97cc23e36200e68486f3decac0
Comment 5 Kurt Hindenburg 2019-10-06 14:34:03 UTC
Git commit 1561f6203bbf5e97cc23e36200e68486f3decac0 by Kurt Hindenburg, on behalf of Jiří Paleček.
Committed on 06/10/2019 at 14:33.
Pushed by scmsync into branch 'Applications/19.08'.

Allow loading of pre 19.08 session files

The format of the Konsole session file changed with 19.08. This was
overlooked and pre 19.08 files caused crashes.  That crash was fixed
in 19.08.1 to just start the default profile.
This patch will allow pre 19.08 session files to be loaded correctly.
FIXED-IN: 19.08.2
(cherry picked from commit 2de43394c98364edd48fb74bbaa467d5d281d445)

M  +34   -1    src/ViewManager.cpp

https://commits.kde.org/konsole/1561f6203bbf5e97cc23e36200e68486f3decac0