Commit bec3244f authored by Alexandre Julliard's avatar Alexandre Julliard

Lazy initialisation of thread locale.

parent 4da59ea6
...@@ -90,7 +90,6 @@ static BOOL THREAD_InitTEB( TEB *teb ) ...@@ -90,7 +90,6 @@ static BOOL THREAD_InitTEB( TEB *teb )
teb->StaticUnicodeString.MaximumLength = sizeof(teb->StaticUnicodeBuffer); teb->StaticUnicodeString.MaximumLength = sizeof(teb->StaticUnicodeBuffer);
teb->StaticUnicodeString.Buffer = (PWSTR)teb->StaticUnicodeBuffer; teb->StaticUnicodeString.Buffer = (PWSTR)teb->StaticUnicodeBuffer;
teb->teb_sel = SELECTOR_AllocBlock( teb, 0x1000, SEGMENT_DATA, TRUE, FALSE ); teb->teb_sel = SELECTOR_AllocBlock( teb, 0x1000, SEGMENT_DATA, TRUE, FALSE );
teb->CurrentLocale = GetUserDefaultLCID(); /* for threads in user context */
return (teb->teb_sel != 0); return (teb->teb_sel != 0);
} }
...@@ -272,10 +271,6 @@ static void THREAD_Start(void) ...@@ -272,10 +271,6 @@ static void THREAD_Start(void)
/*********************************************************************** /***********************************************************************
* CreateThread (KERNEL32.63) * CreateThread (KERNEL32.63)
*
* NOTE
* this function is not called for the first thread of a process
* do initializations in THREAD_InitTEB
*/ */
HANDLE WINAPI CreateThread( SECURITY_ATTRIBUTES *sa, DWORD stack, HANDLE WINAPI CreateThread( SECURITY_ATTRIBUTES *sa, DWORD stack,
LPTHREAD_START_ROUTINE start, LPVOID param, LPTHREAD_START_ROUTINE start, LPVOID param,
...@@ -858,7 +853,9 @@ VOID WINAPI VWin32_BoostThreadStatic( DWORD threadId, INT boost ) ...@@ -858,7 +853,9 @@ VOID WINAPI VWin32_BoostThreadStatic( DWORD threadId, INT boost )
*/ */
LCID WINAPI GetThreadLocale(void) LCID WINAPI GetThreadLocale(void)
{ {
return NtCurrentTeb()->CurrentLocale; LCID ret = NtCurrentTeb()->CurrentLocale;
if (!ret) NtCurrentTeb()->CurrentLocale = ret = GetUserDefaultLCID();
return ret;
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment