diff --git a/Contrib/MakeLangId/MakeLangId.cpp b/Contrib/MakeLangId/MakeLangId.cpp index 8d4b4c8d..fcabe144 100644 --- a/Contrib/MakeLangId/MakeLangId.cpp +++ b/Contrib/MakeLangId/MakeLangId.cpp @@ -19,7 +19,7 @@ History Reference ========= -https://msdn.microsoft.com/en-us/library/windows/desktop/dd318693(v=vs.85).aspx#Language Identifier Constants and Strings +https://msdn.microsoft.com/library/dd318693#Language Identifier Constants and Strings https://wayback.archive.org/web/20021221200122/http://msdn.microsoft.com/library/en-us/intl/nls_8rse.asp#LOCALE_* (95/98/ME/NT4/2000/XP) */ @@ -66,7 +66,7 @@ static INT_PTR StrToIntptr(LPCTSTR s, bool ForceHex = false) typedef struct { WORD id; LPCSTR name; } INTLNG; // Storing the names as ASCII saves 4 KiB #define IL(p, s, pn, sn) { MAKELANGID(p, s), #pn ":" #sn } -static const INTLNG g_IntLoc[] = { +static const INTLNG g_IntLang[] = { //(0x00, 0x00, NEUTRAL, NEUTRAL), //(0x00, 0x01, NEUTRAL, DEFAULT), IL(0x7f, 0x00, INVARIANT, NEUTRAL), // Invariant locale @@ -247,7 +247,7 @@ static BOOL CALLBACK EnumSysLocalesProc(LPTSTR lpLocaleString) if (!retval) // LOCALE_SENGLISHDISPLAYNAME is Win7+ { GetLocaleInfo(lcid, LOCALE_SENGCOUNTRY|LOCALE_NOUSEROVERRIDE, buf2, cchbuf2); - retval = GetLocaleInfo(lcid, LOCALE_SENGLANGUAGE|LOCALE_NOUSEROVERRIDE, buf1, cchbuf1); + if ((retval = GetLocaleInfo(lcid, LOCALE_SENGLANGUAGE|LOCALE_NOUSEROVERRIDE, buf1, cchbuf1))) --retval; retval += wsprintf(buf1+retval, retval ? TEXT(" (%s)") : TEXT("?"), buf2); } AddLocale(g_hList, buf1, lid); @@ -265,15 +265,15 @@ static void InitIntLangList(HWND hCtl) { g_hList = hCtl; SendMessage(hCtl, CB_SETCUEBANNER, 0, (LPARAM) L"Select a language..."); - for (UINT i = 0; i < sizeof(g_IntLoc)/sizeof(INTLNG); ++i) + for (UINT i = 0; i < sizeof(g_IntLang)/sizeof(INTLNG); ++i) { #ifdef UNICODE WCHAR name[200]; - wsprintf(name, L"%S", g_IntLoc[i].name); + wsprintf(name, L"%S", g_IntLang[i].name); #else - LPCTSTR name = g_IntLoc[i].name; + LPCTSTR name = g_IntLang[i].name; #endif - AddLocale(hCtl, name, g_IntLoc[i].id); + AddLocale(hCtl, name, g_IntLang[i].id); } } @@ -285,7 +285,7 @@ static void OnLanguageChanged(HWND hDlg) HWND hList = g_hList; INT idx = SendMessage(hList, CB_GETCURSEL, 0, 0); - UINT lid = SendMessage(hList, CB_GETITEMDATA, idx, 0), lcid = MAKELCID(lid, SORT_DEFAULT); + UINT lid = SendMessage(hList, CB_GETITEMDATA, idx, 0), lcid = MAKELCID(lid, SORT_DEFAULT), retval; EnableWindow(GetDlgItem(hDlg, IDOK), idx != CB_ERR); if (idx == CB_ERR) { @@ -295,17 +295,17 @@ static void OnLanguageChanged(HWND hDlg) return ; } - UINT retval = GetLocaleInfo(lcid, LOCALE_SNATIVEDISPLAYNAME|LOCALE_NOUSEROVERRIDE, buf1, cchbuf1); + if ((retval = GetLocaleInfo(lcid, LOCALE_SNATIVEDISPLAYNAME|LOCALE_NOUSEROVERRIDE, buf1, cchbuf1))) --retval; if (!retval) // LOCALE_SNATIVEDISPLAYNAME is Win7+ { GetLocaleInfo(lcid, LOCALE_SNATIVECTRYNAME|LOCALE_NOUSEROVERRIDE, buf2, cchbuf2); - retval = GetLocaleInfo(lcid, LOCALE_SNATIVELANGNAME|LOCALE_NOUSEROVERRIDE, buf1, cchbuf1); + if ((retval = GetLocaleInfo(lcid, LOCALE_SNATIVELANGNAME|LOCALE_NOUSEROVERRIDE, buf1, cchbuf1))) --retval; retval += wsprintf(buf1+retval, retval ? TEXT(" (%s)") : TEXT("?"), buf2); } if (retval && GetLocaleInfo(lcid, LOCALE_SNAME|LOCALE_NOUSEROVERRIDE, buf2, cchbuf2) && *buf2) { - wsprintf(buf1+retval-1, TEXT(" [%s]"), buf2); + wsprintf(buf1+retval, TEXT(" [%s]"), buf2); } SetDlgItemText(hDlg, IDC_INFO, buf1); diff --git a/Contrib/MakeLangId/resource.rc b/Contrib/MakeLangId/resource.rc index 1f3206b0..4a17d4a6 100644 --- a/Contrib/MakeLangId/resource.rc +++ b/Contrib/MakeLangId/resource.rc @@ -67,7 +67,7 @@ BEGIN COMBOBOX IDC_SOURCE, 7, 7, 171, 100, CBS_DROPDOWNLIST | WS_CHILD | WS_VISIBLE | WS_VSCROLL | WS_TABSTOP COMBOBOX IDC_SYSLANGLIST, 7, 24, 171, 100, CBS_DROPDOWNLIST | CBS_SORT | WS_CHILD | WS_VISIBLE | WS_VSCROLL | WS_TABSTOP COMBOBOX IDC_INTLANGLIST, 7, 24, 171, 100, CBS_DROPDOWNLIST | CBS_SORT | WS_CHILD | WS_VISIBLE | WS_VSCROLL | WS_TABSTOP - LTEXT "", IDC_INFO, 7, 41, 171, 8 + CONTROL "", IDC_INFO, "STATIC", SS_LEFT | SS_NOTIFY | WS_CHILD | WS_VISIBLE | WS_GROUP, 7, 41, 171, 8 // SS_NOTIFY enables double-click to copy on Vista+ LTEXT "Language ID:", -1, 7, 51, 45, 8 CONTROL "", IDC_LANGID, "EDIT", ES_LEFT | ES_READONLY | ES_AUTOHSCROLL | WS_CHILD | WS_VISIBLE | WS_TABSTOP, 58, 51, 119, 8 LTEXT "Codepage:", -1, 7, 61, 45, 8