Core Plot 2.2 在 OS X 10.8 上崩溃并出现 "Unrecognized Selector" 异常

Core Plot 2.2 crashes on OS X 10.8 with "Unrecognized Selector" exception

我在 macOS Sierra 上使用 Xcode 8.1。我的应用程序的部署目标设置为 10.8,它使用 Core Plot 2.2,应该与 10.8 兼容。该应用程序在我的开发机器上运行,但是当我在 OS X 10.8.5(VMware Fusion 虚拟机)上启动它时,它在打开包含 CPTGraph 的主 window 时崩溃。

堆栈跟踪:

OS Version:      Mac OS X 10.8.5 (12F2560)
Report Version:  10

Interval Since Last Report:          227946 sec
Crashes Since Last Report:           8
Per-App Interval Since Last Report:  87 sec
Per-App Crashes Since Last Report:   3
Anonymous UUID:                      25357976-7739-B0C4-594A-D7FC51D4A1F3

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

Exception Type:  EXC_CRASH (SIGABRT)
Exception Codes: 0x0000000000000000, 0x0000000000000000

Application Specific Information:
*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[__NSCFConstantString boundingRectWithSize:options:attributes:context:]: unrecognized selector sent to instance 0x1012ab910'
abort() called
terminate called throwing an exception

Application Specific Backtrace 1:
0   CoreFoundation                      0x00007fff81e7fb06 __exceptionPreprocess + 198
1   libobjc.A.dylib                     0x00007fff856073f0 objc_exception_throw + 43
2   CoreFoundation                      0x00007fff81f1640a -[NSObject(NSObject) doesNotRecognizeSelector:] + 186
3   CoreFoundation                      0x00007fff81e6e02e ___forwarding___ + 414
4   CoreFoundation                      0x00007fff81eb3dad __forwarding_prep_1___ + 237
5   CorePlot                            0x000000010139d96e -[NSString(CPTTextStyleExtensions) sizeWithTextStyle:] + 93
6   CorePlot                            0x00000001013858e9 -[CPTTextLayer sizeThatFits] + 198
7   CorePlot                            0x00000001013859b2 -[CPTTextLayer sizeToFit] + 93
8   CorePlot                            0x0000000101384df0 -[CPTTextLayer initWithText:style:] + 295
9   CorePlot                            0x000000010134ee14 -[CPTGraph setTitle:] + 448
10  RehaSport Desktop                   0x0000000101266dcd RehaSport Desktop + 331213

显然 boundingRectWithSize:options:attributes:context: 被调用,但这仅适用于 macOS 10.11 和更新版本。

有什么想法吗?

这是一个核心情节错误。我在 release-2.3 分支上修复了它。