From d92ef9ff11eb08d0eafc461be3357dfb99cca504 Mon Sep 17 00:00:00 2001 From: Jeremy Schonfeld Date: Tue, 7 Jan 2025 12:43:24 -0500 Subject: [PATCH] Fix race condition in __CFStringGetEightBitStringEncoding --- Sources/CoreFoundation/include/ForFoundationOnly.h | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/Sources/CoreFoundation/include/ForFoundationOnly.h b/Sources/CoreFoundation/include/ForFoundationOnly.h index 5bfea27735..b524163d4c 100644 --- a/Sources/CoreFoundation/include/ForFoundationOnly.h +++ b/Sources/CoreFoundation/include/ForFoundationOnly.h @@ -287,8 +287,11 @@ CF_EXPORT CFStringEncoding __CFDefaultEightBitStringEncoding; CF_EXPORT CFStringEncoding __CFStringComputeEightBitStringEncoding(void); CF_INLINE CFStringEncoding __CFStringGetEightBitStringEncoding(void) { - if (__CFDefaultEightBitStringEncoding == kCFStringEncodingInvalidId) __CFStringComputeEightBitStringEncoding(); - return __CFDefaultEightBitStringEncoding; + if (__CFDefaultEightBitStringEncoding == kCFStringEncodingInvalidId) { + return __CFStringComputeEightBitStringEncoding(); + } else { + return __CFDefaultEightBitStringEncoding; + } } enum {