Piotr Caban : msvcrt: Simplify get_current_locale_noalloc implementation.

Alexandre Julliard julliard at winehq.org
Wed Nov 25 15:58:55 CST 2020


Module: wine
Branch: master
Commit: 40d4fbe45997a1820296e7909ba2212518bcfacc
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=40d4fbe45997a1820296e7909ba2212518bcfacc

Author: Piotr Caban <piotr at codeweavers.com>
Date:   Wed Nov 25 20:24:56 2020 +0100

msvcrt: Simplify get_current_locale_noalloc implementation.

Signed-off-by: Piotr Caban <piotr at codeweavers.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/msvcrt/locale.c | 15 +++------------
 1 file changed, 3 insertions(+), 12 deletions(-)

diff --git a/dlls/msvcrt/locale.c b/dlls/msvcrt/locale.c
index 6d891c3a8e0..73138bfd306 100644
--- a/dlls/msvcrt/locale.c
+++ b/dlls/msvcrt/locale.c
@@ -1174,20 +1174,11 @@ MSVCRT__locale_t CDECL get_current_locale_noalloc(MSVCRT__locale_t locale)
 {
     thread_data_t *data = msvcrt_get_thread_data();
 
-    if(!data || !(data->locale_flags & LOCALE_THREAD))
-    {
-        _lock_locales();
-        *locale = *MSVCRT_locale;
-    }
-    else
-    {
-        locale->locinfo = data->locinfo;
-        locale->mbcinfo = data->mbcinfo;
-    }
+    update_thread_locale(data);
+    locale->locinfo = data->locinfo;
+    locale->mbcinfo = data->mbcinfo;
 
     grab_locinfo(locale->locinfo);
-    if(locale->locinfo == MSVCRT_locale->locinfo)
-        _unlock_locales();
     InterlockedIncrement(&locale->mbcinfo->refcount);
     return locale;
 }




More information about the wine-cvs mailing list