100{
101 const char* langUTF8 = "en_US.UTF8";
102 char* lang = getenv("LANG");
103 if (!lang) {
104
105 lang = setlocale(LC_CTYPE,
NULL);
106 }
107 if (lang) {
108 ByteString lang_ = ByteString(lang);
109 ByteString lower = lang_.toLowerCase();
110 if (lower.contains("ko") || lower.contains("kr")) {
111 langUTF8 = "ko_KR.UTF8";
112 }
113 }
115 if (setenv("CLIENT_LOCALE", langUTF8, 1)) {
116 return false;
117 }
118
119#if defined(__DCL_DEBUG) && defined(_DEBUG) && defined(_WINDOWS)
120 __hMSVCRT_DLL = ::LoadLibrary("MSVCRT.DLL");
121 if (!__hMSVCRT_DLL) {
122 return false;
123 }
124
125 __pfn_free = (__ndebug_free__)
126 ::GetProcAddress(__hMSVCRT_DLL, "free");
127 if (!__pfn_free) {
128 ::FreeLibrary(__hMSVCRT_DLL);
129 __hMSVCRT_DLL =
NULL;
130 return false;
131 }
132#endif
133
134 return true;
135}
#define __DCL_TRACE1_N(fmt, arg)