Bug 487819 - After a5a9b6e70, on macOS, konsole crashes upon creating 2nd tab
Summary: After a5a9b6e70, on macOS, konsole crashes upon creating 2nd tab
Status: RESOLVED FIXED
Alias: None
Product: konsole
Classification: Applications
Component: general (show other bugs)
Version: master
Platform: Other macOS
: NOR crash
Target Milestone: ---
Assignee: Konsole Developer
URL:
Keywords:
: 483035 (view as bug list)
Depends on:
Blocks:
 
Reported: 2024-05-30 23:42 UTC by Kurt Hindenburg
Modified: 2024-06-06 22:06 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Kurt Hindenburg 2024-05-30 23:42:24 UTC
https://invent.kde.org/utilities/konsole/-/merge_requests/996

VM Region Info: 0x60 is not in any region.  Bytes before following region: 4314632096
      REGION TYPE                    START - END         [ VSIZE] PRT/MAX SHRMOD  REGION DETAIL
      UNUSED SPACE AT START
--->  
      __TEXT                      1012c1000-1012db000    [  104K] r-x/r-x SM=COW  /Applications/KF6/konsole.app/Contents/MacOS/konsole

Thread 0 Crashed::  Dispatch queue: com.apple.main-thread
0   libkonsoleprivate.24.07.70.dylib	       0x1023b5e3b Konsole::SessionController::session() const + 27 (SessionController.h:95)
1   libkonsoleprivate.24.07.70.dylib	       0x102559bec Konsole::SessionController::userTitle() const + 44 (SessionController.cpp:2160)
2   libkonsoleprivate.24.07.70.dylib	       0x102578275 Konsole::TerminalDisplayAccessible::TerminalDisplayAccessible(Konsole::TerminalDisplay*) + 53 (TerminalDisplayAccessible.cpp:16)
3   libkonsoleprivate.24.07.70.dylib	       0x10257831d Konsole::TerminalDisplayAccessible::TerminalDisplayAccessible(Konsole::TerminalDisplay*) + 29 (TerminalDisplayAccessible.cpp:17)
4   libkonsoleprivate.24.07.70.dylib	       0x1024be292 Konsole::accessibleInterfaceFactory(QString const&, QObject*) + 66 (TerminalDisplay.cpp:185)
5   QtGui                         	       0x1070aabde QAccessible::queryAccessibleInterface(QObject*) + 414 (qaccessible.cpp:691)
6   QtWidgets                     	       0x104ebb648 QStyleHelper::isInstanceOf(QObject*, QAccessible::Role) + 22 (qstylehelper.cpp:106) [inlined]
7   QtWidgets                     	       0x104ebb648 QStyleHelper::hasAncestor(QObject*, QAccessible::Role) + 56 (qstylehelper.cpp:117)
8   libqmacstyle.dylib            	       0x105f8d820 QMacStyle::styleHint(QStyle::StyleHint, QStyleOption const*, QWidget const*, QStyleHintReturn*) const + 1680 (qmacstyle_mac.mm:2819)
9   QtWidgets                     	       0x10500b297 QScrollBarPrivate::init() + 119 (qscrollbar.cpp:353)
10  libkonsoleprivate.24.07.70.dylib	       0x1024ec8a1 Konsole::TerminalScrollBar::TerminalScrollBar(QWidget*) + 33 (TerminalScrollBar.cpp:27)
11  libkonsoleprivate.24.07.70.dylib	       0x1024ecb3d Konsole::TerminalScrollBar::TerminalScrollBar(QWidget*) + 29 (TerminalScrollBar.cpp:28)
12  libkonsoleprivate.24.07.70.dylib	       0x1024be975 Konsole::TerminalDisplay::TerminalDisplay(QWidget*) + 1717 (TerminalDisplay.cpp:224)
13  libkonsoleprivate.24.07.70.dylib	       0x1024c040d Konsole::TerminalDisplay::TerminalDisplay(QWidget*) + 29 (TerminalDisplay.cpp:213)
14  libkonsoleprivate.24.07.70.dylib	       0x1023e6b02 Konsole::ViewManager::createTerminalDisplay(Konsole::Session*) + 50 (ViewManager.cpp:1059)
15  libkonsoleprivate.24.07.70.dylib	       0x1023e55d9 Konsole::ViewManager::createView(Konsole::Session*) + 137 (ViewManager.cpp:932)
Comment 1 Bug Janitor Service 2024-05-31 00:07:06 UTC
A possibly relevant merge request was started @ https://invent.kde.org/utilities/konsole/-/merge_requests/1002
Comment 2 Kurt Hindenburg 2024-06-05 22:21:41 UTC
Git commit 5c864dc0a446001aae2b6c7add25a187923793d6 by Kurt Hindenburg, on behalf of Kurt Hindenburg.
Committed on 05/06/2024 at 22:18.
Pushed by cullmann into branch 'master'.

On macOS after a5a9b6e70, fix crash upon opening 2nd tab

For now just #if the issue away

M  +8    -0    src/main.cpp

https://invent.kde.org/utilities/konsole/-/commit/5c864dc0a446001aae2b6c7add25a187923793d6
Comment 3 Christoph Cullmann 2024-06-06 19:36:52 UTC
Git commit 65f7b167f80635f061006e1530126cfcb8963706 by Christoph Cullmann.
Committed on 06/06/2024 at 19:36.
Pushed by cullmann into branch 'master'.

don't access not yet set sessionController()

the accessibility interface might by chance be requested before we set the session controller field

M  +1    -1    src/widgets/TerminalDisplayAccessible.cpp

https://invent.kde.org/utilities/konsole/-/commit/65f7b167f80635f061006e1530126cfcb8963706
Comment 4 Christoph Cullmann 2024-06-06 19:38:29 UTC
Fixed it and reverted the workaround. We were just lucky that this got not triggered more often, the accessibility stuff might try to create the interface even before we later set the session controller.
Comment 5 Christoph Cullmann 2024-06-06 22:06:11 UTC
*** Bug 483035 has been marked as a duplicate of this bug. ***