kingToolbox / kingToolbox/WindTerm

Crash on MAC OS

Open
#1,192 1 comment 0 reactions 0 assignees View on GitHub
Dominant language
C
Stars
32.3k
Forks
2.5k
PR merge metrics
No merged PRs in 30d

Description

Crash on MAC OS
windterm version is 2.5.0
The detailed crash information is as follows:

Process: WindTerm [69694]
Path: /Applications/WindTerm.app/Contents/MacOS/WindTerm
Identifier: KingToolbox.WindTerm
Version: 0
Code Type: X86-64 (Native)
Parent Process: ??? [1]
Responsible: WindTerm [69694]
User ID: 501

Date/Time: 2022-09-07 23:34:07.275 +0800
OS Version: macOS 11.6 (20G165)
Report Version: 12
Anonymous UUID: BCFD99FD-2A8B-ABCE-5B0A-9BC7A3B7538F

Sleep/Wake UUID: ADEC6BA4-100C-4371-9C14-5D0BCD090C2C

Time Awake Since Boot: 1700000 seconds
Time Since Wake: 23 seconds

System Integrity Protection: enabled

Crashed Thread: 0 Dispatch queue: com.apple.main-thread

Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Codes: KERN_INVALID_ADDRESS at 0x0000000000000048
Exception Note: EXC_CORPSE_NOTIFY

Termination Signal: Segmentation fault: 11
Termination Reason: Namespace SIGNAL, Code 0xb
Terminating Process: exc handler [69694]

VM Regions Near 0x48:
-->
__TEXT 10a52e000-10af1e000 [ 9.9M] r-x/r-x SM=COW /Applications/WindTerm.app/Contents/MacOS/WindTerm

Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
0 KingToolbox.WindTerm 0x000000010a58955e LoginWizard::switchLayout(LoginWizard::LoginStage, QVariant) + 142
1 KingToolbox.WindTerm 0x000000010a7cf758 SessionConnector::onSessionStateChanged(King::SessionState, QVariant const&) + 968
2 org.qt-project.QtCore 0x000000010ca7cb9f QObject::event(QEvent*) + 943
3 org.qt-project.QtWidgets 0x000000010b5309ea QApplicationPrivate::notify_helper(QObject*, QEvent*) + 266
4 org.qt-project.QtWidgets 0x000000010b531e11 QApplication::notify(QObject*, QEvent*) + 497
5 org.qt-project.QtCore 0x000000010ca51a34 QCoreApplication::notifyInternal2(QObject*, QEvent*) + 212
6 org.qt-project.QtCore 0x000000010ca52d79 QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) + 809
7 libqcocoa.dylib 0x000000010f17f259 QCocoaEventDispatcherPrivate::processPostedEvents() + 313
8 libqcocoa.dylib 0x000000010f17f9c8 QCocoaEventDispatcherPrivate::postedEventsSourceCallback(void*) + 40
9 com.apple.CoreFoundation 0x00007fff204092bc __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 17
10 com.apple.CoreFoundation 0x00007fff20409224 __CFRunLoopDoSource0 + 180
11 com.apple.CoreFoundation 0x00007fff20408fa4 __CFRunLoopDoSources0 + 242
12 com.apple.CoreFoundation 0x00007fff204079cc __CFRunLoopRun + 893
13 com.apple.CoreFoundation 0x00007fff20406f8c CFRunLoopRunSpecific + 563
14 com.apple.HIToolbox 0x00007fff2864f1f3 RunCurrentEventLoopInMode + 292
15 com.apple.HIToolbox 0x00007fff2864ef55 ReceiveNextEventCommon + 587
16 com.apple.HIToolbox 0x00007fff2864ecf3 _BlockUntilNextEventMatchingListInModeWithFilter + 70
17 com.apple.AppKit 0x00007fff22c10172 _DPSNextEvent + 864
18 com.apple.AppKit 0x00007fff22c0e945 -[NSApplication(NSEvent) _nextEventMatchingEventMask:untilDate:inMode:dequeue:] + 1364
19 com.apple.AppKit 0x00007fff22c00c69 -[NSApplication run] + 586
20 libqcocoa.dylib 0x000000010f17e62f QCocoaEventDispatcher::processEvents(QFlags) + 2495
21 org.qt-project.QtCore 0x000000010ca4dacf QEventLoop::exec(QFlags) + 431
22 org.qt-project.QtCore 0x000000010ca52042 QCoreApplication::exec() + 130
23 KingToolbox.WindTerm 0x000000010a5d9be9 main + 89
24 libdyld.dylib 0x00007fff2032cf3d start + 1

Thread 1:: com.apple.NSEventThread
0 libsystem_kernel.dylib 0x00007fff202dc2ba mach_msg_trap + 10
1 libsystem_kernel.dylib 0x00007fff202dc62c mach_msg + 60
2 com.apple.CoreFoundation 0x00007fff2040949f __CFRunLoopServiceMachPort + 316
3 com.apple.CoreFoundation 0x00007fff20407b7f __CFRunLoopRun + 1328
4 com.apple.CoreFoundation 0x00007fff20406f8c CFRunLoopRunSpecific + 563
5 com.apple.AppKit 0x00007fff22d9623a _NSEventThread + 124
6 libsystem_pthread.dylib 0x00007fff203118fc _pthread_start + 224
7 libsystem_pthread.dylib 0x00007fff2030d443 thread_start + 15

Thread 2:: QThread
0 libsystem_kernel.dylib 0x00007fff202e29ca poll + 10
1 org.qt-project.QtCore 0x000000010cab4220 qt_safe_poll(pollfd*, unsigned int, timespec const*) + 608
2 org.qt-project.QtCore 0x000000010cab5a21 QEventDispatcherUNIX::processEvents(QFlags) + 849
3 org.qt-project.QtCore 0x000000010ca4dacf QEventLoop::exec(QFlags) + 431
4 org.qt-project.QtCore 0x000000010c87a603 QThread::exec() + 131
5 org.qt-project.QtCore 0x000000010c87b619 QThreadPrivate::start(void*) + 329
6 libsystem_pthread.dylib 0x00007fff203118fc _pthread_start + 224
7 libsystem_pthread.dylib 0x00007fff2030d443 thread_start + 15

Thread 3:: QThread
0 libsystem_kernel.dylib 0x00007fff202e29ca poll + 10
1 org.qt-project.QtCore 0x000000010cab4220 qt_safe_poll(pollfd*, unsigned int, timespec const*) + 608
2 org.qt-project.QtCore 0x000000010cab5a21 QEventDispatcherUNIX::processEvents(QFlags) + 849
3 org.qt-project.QtCore 0x000000010ca4dacf QEventLoop::exec(QFlags) + 431
4 org.qt-project.QtCore 0x000000010c87a603 QThread::exec() + 131
5 org.qt-project.QtCore 0x000000010c87b619 QThreadPrivate::start(void*) + 329
6 libsystem_pthread.dylib 0x00007fff203118fc _pthread_start + 224
7 libsystem_pthread.dylib 0x00007fff2030d443 thread_start + 15

Thread 4:: QThread
0 libsystem_kernel.dylib 0x00007fff202e29ca poll + 10
1 org.qt-project.QtCore 0x000000010cab4220 qt_safe_poll(pollfd*, unsigned int, timespec const*) + 608
2 org.qt-project.QtCore 0x000000010cab5a21 QEventDispatcherUNIX::processEvents(QFlags) + 849
3 org.qt-project.QtCore 0x000000010ca4dacf QEventLoop::exec(QFlags) + 431
4 org.qt-project.QtCore 0x000000010c87a603 QThread::exec() + 131
5 org.qt-project.QtCore 0x000000010c87b619 QThreadPrivate::start(void*) + 329
6 libsystem_pthread.dylib 0x00007fff203118fc _pthread_start + 224
7 libsystem_pthread.dylib 0x00007fff2030d443 thread_start + 15

Thread 5:: QThread
0 libsystem_kernel.dylib 0x00007fff202e29ca poll + 10
1 org.qt-project.QtCore 0x000000010cab401a qt_safe_poll(pollfd*, unsigned int, timespec const*) + 90
2 org.qt-project.QtCore 0x000000010cab5a21 QEventDispatcherUNIX::processEvents(QFlags) + 849
3 org.qt-project.QtCore 0x000000010ca4dacf QEventLoop::exec(QFlags) + 431
4 org.qt-project.QtCore 0x000000010c87a603 QThread::exec() + 131
5 org.qt-project.QtCore 0x000000010c87b619 QThreadPrivate::start(void*) + 329
6 libsystem_pthread.dylib 0x00007fff203118fc _pthread_start + 224
7 libsystem_pthread.dylib 0x00007fff2030d443 thread_start + 15

Thread 6:: com.apple.CFSocket.private
0 libsystem_kernel.dylib 0x00007fff202e4656 __select + 10
1 com.apple.CoreFoundation 0x00007fff2042fa03 __CFSocketManager + 630
2 libsystem_pthread.dylib 0x00007fff203118fc _pthread_start + 224
3 libsystem_pthread.dylib 0x00007fff2030d443 thread_start + 15

Thread 7:: QThread
0 libsystem_kernel.dylib 0x00007fff202e29ca poll + 10
1 org.qt-project.QtCore 0x000000010cab401a qt_safe_poll(pollfd*, unsigned int, timespec const*) + 90
2 org.qt-project.QtCore 0x000000010cab5a21 QEventDispatcherUNIX::processEvents(QFlags) + 849
3 org.qt-project.QtCore 0x000000010ca4dacf QEventLoop::exec(QFlags) + 431
4 org.qt-project.QtCore 0x000000010c87a603 QThread::exec() + 131
5 org.qt-project.QtCore 0x000000010c87b619 QThreadPrivate::start(void*) + 329
6 libsystem_pthread.dylib 0x00007fff203118fc _pthread_start + 224
7 libsystem_pthread.dylib 0x00007fff2030d443 thread_start + 15

Thread 8:: QThread
0 libsystem_kernel.dylib 0x00007fff202e29ca poll + 10
1 org.qt-project.QtCore 0x000000010cab4220 qt_safe_poll(pollfd*, unsigned int, timespec const*) + 608
2 org.qt-project.QtCore 0x000000010cab5a21 QEventDispatcherUNIX::processEvents(QFlags) + 849
3 org.qt-project.QtCore 0x000000010ca4dacf QEventLoop::exec(QFlags) + 431
4 org.qt-project.QtCore 0x000000010c87a603 QThread::exec() + 131
5 org.qt-project.QtCore 0x000000010c87b619 QThreadPrivate::start(void*) + 329
6 libsystem_pthread.dylib 0x00007fff203118fc _pthread_start + 224
7 libsystem_pthread.dylib 0x00007fff2030d443 thread_start + 15

Thread 9:: QThread
0 libsystem_kernel.dylib 0x00007fff202e29ca poll + 10
1 org.qt-project.QtCore 0x000000010cab401a qt_safe_poll(pollfd*, unsigned int, timespec const*) + 90
2 org.qt-project.QtCore 0x000000010cab5a21 QEventDispatcherUNIX::processEvents(QFlags) + 849
3 org.qt-project.QtCore 0x000000010ca4dacf QEventLoop::exec(QFlags) + 431
4 org.qt-project.QtCore 0x000000010c87a603 QThread::exec() + 131
5 org.qt-project.QtCore 0x000000010c87b619 QThreadPrivate::start(void*) + 329
6 libsystem_pthread.dylib 0x00007fff203118fc _pthread_start + 224
7 libsystem_pthread.dylib 0x00007fff2030d443 thread_start + 15

Thread 10:
0 libsystem_pthread.dylib 0x00007fff2030d420 start_wqthread + 0

Thread 11:
0 libsystem_pthread.dylib 0x00007fff2030d420 start_wqthread + 0

Thread 0 crashed with X86 Thread State (64-bit):
rax: 0x0000000000000000 rbx: 0x00006000007128e0 rcx: 0x00006000007128e0 rdx: 0x00007ffee56cfd88
rdi: 0x0000000000000000 rsi: 0x0000000000000002 rbp: 0x00007ffee56cfd20 rsp: 0x00007ffee56cfc60
r8: 0x0000000000001140 r9: 0x0000000000000030 r10: 0x00000000000007fb r11: 0x0000000000000155
r12: 0x00006000007128e0 r13: 0x0000000000000000 r14: 0x0000000000000002 r15: 0x00007ffee56cfd88
rip: 0x000000010a58955e rfl: 0x0000000000010246 cr2: 0x0000000000000048

Contributor guide

No contributing guide indexed for this repository

Research direction

Start by examining the crash location LoginWizard::switchLayout and its caller SessionConnector::onSessionStateChanged. Reproduce the crash with WindTerm 2.5.0 on macOS 11.6 and compare the resulting trace with the report. Done means the reported login flow no longer produces the EXC_BAD_ACCESS crash.

Written by the indexing model from the issue text.

Assessment

Tech stack
c, macos
Domain
desktop
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.