summaryrefslogtreecommitdiff
path: root/spec/ruby
diff options
context:
space:
mode:
authorYuta Saito <kateinoigakukun@gmail.com>2022-09-24 03:36:04 +0900
committernagachika <nagachika@ruby-lang.org>2022-10-01 18:10:12 +0900
commit8ebaa174d8dc458edf85b1f8b50d033f4bff6106 (patch)
tree9b6b8fa1b79fb37fbc3a07b8bb02fd04e4a9ee59 /spec/ruby
parentbf92aace45ed7f2e5455cf0a2fdd4d1cfa9edd38 (diff)
Initialize Objective-C classes before fork() for macOS 13
Since macOS 13, CFString family API used in `rb_str_append_normalized_ospath` may internally use Objective-C classes (`NSTaggedPointerString` and `NSPlaceholderMutableString`) for small strings. On the other hand, Objective-C classes should not be used for the first time in a `fork()`'ed but not `exec()`'ed process. Violations for this rule can result deadlock during class initialization, so Objective-C runtime conservatively crashes on such cases by default. Therefore, we need to use CFString API to initialize Objective-C classes used internally *before* `fork()`. For more details, see https://bugs.ruby-lang.org/issues/18912
Diffstat (limited to 'spec/ruby')
0 files changed, 0 insertions, 0 deletions