diff --git a/Nuget/VC-LTL.nuspec b/Nuget/VC-LTL.nuspec index 34c12e6..cc489b0 100644 --- a/Nuget/VC-LTL.nuspec +++ b/Nuget/VC-LTL.nuspec @@ -3,7 +3,6 @@ VC-LTL $version$ - VC-LTL for Visual Studio 2015, 2017, 2019, 2022 VC-LTL for Visual Studio 2015, 2017, 2019, 2022,编译精巧的程序原来如此简单。 YY 初雨团队 @@ -26,11 +25,11 @@ - - + + - + diff --git a/ucrtbase.msvcrt/initctype.cpp b/ucrtbase.msvcrt/initctype.cpp index c488079..a126939 100644 --- a/ucrtbase.msvcrt/initctype.cpp +++ b/ucrtbase.msvcrt/initctype.cpp @@ -23,15 +23,8 @@ struct lc_locale_name_buffer EXTERN_C wchar_t** __cdecl ___lc_locale_name_func(void) { -#if WindowsTargetPlatformMinVersion < WindowsTargetPlatformWindows6 - //XP系统 thread_local 存在限制,所以我们需要在本地弄一份很大的数组,对于这个场景很显然我们不需要太强大散列支持 - static lc_locale_name_buffer ThreadBuffer[0x4000]; - - auto& Current = ThreadBuffer[(GetCurrentThreadId() >> 1) % __crt_countof(ThreadBuffer)]; -#else - static thread_local lc_locale_name_buffer Current; -#endif - + // 由YY-Thunks 为Windows XP提供完整的TLS支持 + static thread_local lc_locale_name_buffer Current; auto lc_handle = ___lc_handle_func(); @@ -68,4 +61,4 @@ EXTERN_C unsigned int __cdecl ___lc_collate_cp_func(void) _LCRT_DEFINE_IAT_SYMBOL(___lc_collate_cp_func); -#endif \ No newline at end of file +#endif