https://bugs.kde.org/show_bug.cgi?id=411387
Bug ID: 411387 Summary: Split View crash with keyboard navigation Product: konsole Version: 19.08.0 Platform: Other OS: Linux Status: REPORTED Severity: minor Priority: NOR Component: split-view Assignee: konsole-de...@kde.org Reporter: n...@astrapaging.com Target Milestone: --- Created attachment 122401 --> https://bugs.kde.org/attachment.cgi?id=122401&action=edit Layout Konsole crash when keyboard navigation is used to switch between TerminalDisplay auto splitterTerminal = qobject_cast<TerminalDisplay*>(targetSplitter->widget(0)); return nullptr and then splitterTerminal->setFocus(Qt::OtherFocusReason); is used https://cgit.kde.org/konsole.git/tree/src/ViewSplitter.cpp#n171 STEPS TO REPRODUCE 1. Split terminal in --------------------------- | | | | | | | | | --------------------------- | | | | | | --------------------------- 2. navigate from bottom to top (ctrl + shift + arrow_up) OBSERVED RESULT Crash EXPECTED RESULT Not Crash Arch KDE Plasma Version: 5.16.4 KDE Frameworks Version: 5.61.0 Qt Version: 5.13.0 Work around diff --git a/src/ViewSplitter.cpp b/src/ViewSplitter.cpp index 7e31172c..2ab15e5c 100644 --- a/src/ViewSplitter.cpp +++ b/src/ViewSplitter.cpp @@ -168,7 +168,7 @@ void ViewSplitter::handleFocusDirection(Qt::Orientation orientation, int directi } else if (qobject_cast<QSplitterHandle*>(child) != nullptr) { auto targetSplitter = qobject_cast<QSplitter*>(child->parent()); auto splitterTerminal = qobject_cast<TerminalDisplay*>(targetSplitter->widget(0)); - splitterTerminal->setFocus(Qt::OtherFocusReason); + if (splitterTerminal != nullptr) splitterTerminal->setFocus(Qt::OtherFocusReason); } else if (qobject_cast<QWidget*>(child) != nullptr) { TerminalDisplay *terminalParent = nullptr; while(terminalParent == nullptr) { -- You are receiving this mail because: You are watching all bug changes.