10.7.2 下 WaitNextEvent 随机崩溃

发布于 2024-12-27 21:29:22 字数 4850 浏览 0 评论 0原文

我们的(旧版)应用多年来一直在一系列操作系统版本(10.4 - 10.7)上稳定运行,现在在 WaitNextEvent 内的一台客户计算机(不过是两台)上随机崩溃。

所有崩溃都发生在 Apple 代码深处的随机位置,但总是在调用堆栈中的某个位置发生 WaitNextEvent

例如:

            Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
            0   dyld                            0x8fe8a33d _ZN4dyldL10loadPhase5EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 716
            1   dyld                            0x8fe8a501 _ZN4dyldL10loadPhase4EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 179
            2   dyld                            0x8fe8ae31 _ZN4dyldL10loadPhase3EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 1429
            3   dyld                            0x8fe8b1f1 _ZN4dyldL10loadPhase1EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 166
            4   dyld                            0x8fe8b340 _ZN4dyldL10loadPhase0EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 240
            5   dyld                            0x8fe8b3fd dyld::load(char const*, dyld::LoadContext const&) + 132
            6   dyld                            0x8fe8e036 dlopen + 428
            7   libdyld.dylib                   0x977b9a95 dlopen + 70
            8   com.apple.CoreServices.CarbonCore   0x90d467cf GetDYLDEntryPointWithImage + 43
            9   com.apple.CoreServices.CarbonCore   0x90d50aed GetDYLDEntryPoint + 45
            10  com.apple.AppKit                0x9c62cf2c _IsCarbonFullScreenInstanceWorkspace + 57
            11  com.apple.AppKit                0x9c03231c -[NSApplication _updateFullScreenPresentationOptions] + 75
            12  com.apple.AppKit                0x9bdc97d5 -[NSApplication sendEvent:] + 906
            13  com.apple.AppKit                0x9c4d81e1 _appActivationHandler + 547
            14  com.apple.AppKit                0x9c4d79b8 carbonAppApplicationHandler + 108
            15  com.apple.HIToolbox             0x9bb9f920 _InvokeEventHandlerUPP(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*, long (*)(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*)) + 36
            16  com.apple.HIToolbox             0x9ba1b803 _ZL23DispatchEventToHandlersP14EventTargetRecP14OpaqueEventRefP14HandlerCallRec + 1602
            17  com.apple.HIToolbox             0x9ba1ac80 _ZL30SendEventToEventTargetInternalP14OpaqueEventRefP20OpaqueEventTargetRefP14HandlerCallRec + 482
            18  com.apple.HIToolbox             0x9ba1aa98 SendEventToEventTargetWithOptions + 75
            19  com.apple.HIToolbox             0x9ba306fe _ZL29ToolboxEventDispatcherHandlerP25OpaqueEventHandlerCallRefP14OpaqueEventRefPv + 3152
            20  com.apple.HIToolbox             0x9ba1bcbe _ZL23DispatchEventToHandlersP14EventTargetRecP14OpaqueEventRefP14HandlerCallRec + 2813
            21  com.apple.HIToolbox             0x9ba1ac80 _ZL30SendEventToEventTargetInternalP14OpaqueEventRefP20OpaqueEventTargetRefP14HandlerCallRec + 482
            22  com.apple.HIToolbox             0x9ba2faa9 SendEventToEventTarget + 76
            23  com.apple.HIToolbox             0x9bb9f76c ToolboxEventDispatcher + 82
            24  com.apple.HIToolbox             0x9bbb1e0f GetOrPeekEvent + 482
            25  com.apple.HIToolbox             0x9bbb217f GetNextEventMatchingMask + 539
            26  com.apple.HIToolbox             0x9bbb24b7 WNEInternal + 434
            27  com.apple.HIToolbox             0x9bbb1784 WaitNextEvent + 53
            28  com.ourStuff                0x000bebe5 LApplication::ProcessNextEvent() + 69

            Thread 0:: Dispatch queue: com.apple.main-thread
            0   libsystem_kernel.dylib          0x9c2dec22 mach_msg_trap + 10
            1   libsystem_kernel.dylib          0x9c2de1f6 mach_msg + 70
            2   com.apple.CoreFoundation        0x98f370ea __CFRunLoopServiceMachPort + 170
            3   com.apple.CoreFoundation        0x98f40214 __CFRunLoopRun + 1428
            4   com.apple.CoreFoundation        0x98f3f8ec CFRunLoopRunSpecific + 332
            5   com.apple.CoreFoundation        0x98f3f798 CFRunLoopRunInMode + 120
            6   com.apple.HIToolbox             0x95b7fa7f RunCurrentEventLoopInMode + 318
            7   com.apple.HIToolbox             0x95d1c151 GetNextEventMatchingMask + 493
            8   com.apple.HIToolbox             0x95d1c4b7 WNEInternal + 434
            9   com.apple.HIToolbox             0x95d1b784 WaitNextEvent + 53
            10  com.apple.HIToolbox             0x95cfc136 ModalDialog + 1638
            11  com.apple.HIToolbox             0x95d03ff5 RunStandardAlert + 741
            12  com.apple.HIToolbox             0x95d028bf StandardAlert + 201
            13  com.ourStuff                0x0007fbaa 0x1000 + 519082

任何提示都将受到高度赞赏!

截至目前,我们无法在本地重现该错误。

Our (legacy) app runs stable on a range of OS versions (10.4 - 10.7) since years and now randomly crashes at ONE customers computers (both of them, though) within WaitNextEvent.

All crashes occur deep inside Apple's code with random locations but always with WaitNextEvent somewhere in the call stack.

Examples are:

            Thread 0 Crashed:: Dispatch queue: com.apple.main-thread
            0   dyld                            0x8fe8a33d _ZN4dyldL10loadPhase5EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 716
            1   dyld                            0x8fe8a501 _ZN4dyldL10loadPhase4EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 179
            2   dyld                            0x8fe8ae31 _ZN4dyldL10loadPhase3EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 1429
            3   dyld                            0x8fe8b1f1 _ZN4dyldL10loadPhase1EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 166
            4   dyld                            0x8fe8b340 _ZN4dyldL10loadPhase0EPKcS1_RKNS_11LoadContextEPSt6vectorIS1_SaIS1_EE + 240
            5   dyld                            0x8fe8b3fd dyld::load(char const*, dyld::LoadContext const&) + 132
            6   dyld                            0x8fe8e036 dlopen + 428
            7   libdyld.dylib                   0x977b9a95 dlopen + 70
            8   com.apple.CoreServices.CarbonCore   0x90d467cf GetDYLDEntryPointWithImage + 43
            9   com.apple.CoreServices.CarbonCore   0x90d50aed GetDYLDEntryPoint + 45
            10  com.apple.AppKit                0x9c62cf2c _IsCarbonFullScreenInstanceWorkspace + 57
            11  com.apple.AppKit                0x9c03231c -[NSApplication _updateFullScreenPresentationOptions] + 75
            12  com.apple.AppKit                0x9bdc97d5 -[NSApplication sendEvent:] + 906
            13  com.apple.AppKit                0x9c4d81e1 _appActivationHandler + 547
            14  com.apple.AppKit                0x9c4d79b8 carbonAppApplicationHandler + 108
            15  com.apple.HIToolbox             0x9bb9f920 _InvokeEventHandlerUPP(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*, long (*)(OpaqueEventHandlerCallRef*, OpaqueEventRef*, void*)) + 36
            16  com.apple.HIToolbox             0x9ba1b803 _ZL23DispatchEventToHandlersP14EventTargetRecP14OpaqueEventRefP14HandlerCallRec + 1602
            17  com.apple.HIToolbox             0x9ba1ac80 _ZL30SendEventToEventTargetInternalP14OpaqueEventRefP20OpaqueEventTargetRefP14HandlerCallRec + 482
            18  com.apple.HIToolbox             0x9ba1aa98 SendEventToEventTargetWithOptions + 75
            19  com.apple.HIToolbox             0x9ba306fe _ZL29ToolboxEventDispatcherHandlerP25OpaqueEventHandlerCallRefP14OpaqueEventRefPv + 3152
            20  com.apple.HIToolbox             0x9ba1bcbe _ZL23DispatchEventToHandlersP14EventTargetRecP14OpaqueEventRefP14HandlerCallRec + 2813
            21  com.apple.HIToolbox             0x9ba1ac80 _ZL30SendEventToEventTargetInternalP14OpaqueEventRefP20OpaqueEventTargetRefP14HandlerCallRec + 482
            22  com.apple.HIToolbox             0x9ba2faa9 SendEventToEventTarget + 76
            23  com.apple.HIToolbox             0x9bb9f76c ToolboxEventDispatcher + 82
            24  com.apple.HIToolbox             0x9bbb1e0f GetOrPeekEvent + 482
            25  com.apple.HIToolbox             0x9bbb217f GetNextEventMatchingMask + 539
            26  com.apple.HIToolbox             0x9bbb24b7 WNEInternal + 434
            27  com.apple.HIToolbox             0x9bbb1784 WaitNextEvent + 53
            28  com.ourStuff                0x000bebe5 LApplication::ProcessNextEvent() + 69

or

            Thread 0:: Dispatch queue: com.apple.main-thread
            0   libsystem_kernel.dylib          0x9c2dec22 mach_msg_trap + 10
            1   libsystem_kernel.dylib          0x9c2de1f6 mach_msg + 70
            2   com.apple.CoreFoundation        0x98f370ea __CFRunLoopServiceMachPort + 170
            3   com.apple.CoreFoundation        0x98f40214 __CFRunLoopRun + 1428
            4   com.apple.CoreFoundation        0x98f3f8ec CFRunLoopRunSpecific + 332
            5   com.apple.CoreFoundation        0x98f3f798 CFRunLoopRunInMode + 120
            6   com.apple.HIToolbox             0x95b7fa7f RunCurrentEventLoopInMode + 318
            7   com.apple.HIToolbox             0x95d1c151 GetNextEventMatchingMask + 493
            8   com.apple.HIToolbox             0x95d1c4b7 WNEInternal + 434
            9   com.apple.HIToolbox             0x95d1b784 WaitNextEvent + 53
            10  com.apple.HIToolbox             0x95cfc136 ModalDialog + 1638
            11  com.apple.HIToolbox             0x95d03ff5 RunStandardAlert + 741
            12  com.apple.HIToolbox             0x95d028bf StandardAlert + 201
            13  com.ourStuff                0x0007fbaa 0x1000 + 519082

Any hints are highly appreciated!

As of now we couldn't reproduce the bug locally.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

盗心人 2025-01-03 21:29:22

FWIW - 在该特定客户停用 DefaultFolderX 后,崩溃就消失了(它一直出现在客户系统上我们应用程序的每个崩溃转储中)。

FWIW - the crashes just disappeared after that particular customer deactivated DefaultFolderX (which kept showing up in every crash dump of our app on the customers system)..

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文