Revision: 7385 http://sourceforge.jp/projects/ttssh2/scm/svn/commits/7385 Author: zmatsuo Date: 2019-01-10 23:19:57 +0900 (Thu, 10 Jan 2019) Log Message: ----------- Merge branch 'trunk' r7384 into cmake Revision Links: -------------- http://sourceforge.jp/projects/ttssh2/scm/svn/commits/7384 Modified Paths: -------------- branches/cmake/installer/release/lang/English.lng branches/cmake/installer/release/lang/French.lng branches/cmake/installer/release/lang/German.lng branches/cmake/installer/release/lang/Japanese.lng branches/cmake/installer/release/lang/Korean.lng branches/cmake/installer/release/lang/Russian.lng branches/cmake/installer/release/lang/Simplified Chinese.lng branches/cmake/installer/release/lang/Traditional Chinese.lng branches/cmake/teraterm/common/codeconv.cpp branches/cmake/teraterm/common/codeconv.h -------------- next part -------------- Modified: branches/cmake/installer/release/lang/English.lng =================================================================== --- branches/cmake/installer/release/lang/English.lng 2019-01-10 14:06:21 UTC (rev 7384) +++ branches/cmake/installer/release/lang/English.lng 2019-01-10 14:19:57 UTC (rev 7385) @@ -707,7 +707,7 @@ FILEDLG_SAVE_PUBLICKEY_RSA_FILTER=SSH2 RSA key(id_rsa.pub)\0id_rsa.pub\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PUBLICKEY_DSA_FILTER=SSH2 DSA key(id_dsa.pub)\0id_dsa.pub\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PUBLICKEY_ECDSA_FILTER=SSH2 ECDSA key(id_ecdsa.pub)\0id_ecdsa.pub\0All Files(*.*)\0*.*\0\0 -FILEDLG_SAVE_PUBLICKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519.pub)\\0id_ed25519.pub\\0All Files(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PUBLICKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519.pub)\0id_ed25519.pub\0All Files(*.*)\0*.*\0\0 MSG_SAVE_KEY_OPENFILE_ERROR=Can't open key file MSG_SAVE_KEY_WRITEFILE_ERROR=Can't write key file MSG_SAVE_PRIVATE_KEY_MISMATCH_ERROR=Two passphrases don't match. @@ -717,7 +717,7 @@ FILEDLG_SAVE_PRIVATEKEY_RSA_FILTER=SSH2 RSA key(id_rsa)\0id_rsa\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_DSA_FILTER=SSH2 DSA key(id_dsa)\0id_dsa\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_ECDSA_FILTER=SSH2 ECDSA key(id_ecdsa)\0id_ecdsa\0All Files(*.*)\0*.*\0\0 -FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\\0id_ed25519\\0All Files(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\0id_ed25519\0All Files(*.*)\0*.*\0\0 ; dlg setup DLG_SSHSETUP_TITLE=TTSSH: Setup Modified: branches/cmake/installer/release/lang/French.lng =================================================================== --- branches/cmake/installer/release/lang/French.lng 2019-01-10 14:06:21 UTC (rev 7384) +++ branches/cmake/installer/release/lang/French.lng 2019-01-10 14:19:57 UTC (rev 7385) @@ -711,7 +711,7 @@ FILEDLG_SAVE_PUBLICKEY_RSA_FILTER=SSH2 RSA key(id_rsa.pub)\0id_rsa.pub\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PUBLICKEY_DSA_FILTER=SSH2 DSA key(id_dsa.pub)\0id_dsa.pub\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PUBLICKEY_ECDSA_FILTER=SSH2 ECDSA key(id_ecdsa.pub)\0id_ecdsa.pub\0All Files(*.*)\0*.*\0\0 -FILEDLG_SAVE_PUBLICKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519.pub)\\0id_ed25519.pub\\0All Files(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PUBLICKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519.pub)\0id_ed25519.pub\0All Files(*.*)\0*.*\0\0 MSG_SAVE_KEY_OPENFILE_ERROR=Impossible d'ouvrir fichier de cl\xE9 MSG_SAVE_KEY_WRITEFILE_ERROR=Impossible d'\xE9crire fichier de cl\xE9 MSG_SAVE_PRIVATE_KEY_MISMATCH_ERROR=Les deux phrases secr\xE8tes sont diff\xE9rentes. @@ -721,7 +721,7 @@ FILEDLG_SAVE_PRIVATEKEY_RSA_FILTER=SSH2 RSA key(id_rsa)\0id_rsa\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_DSA_FILTER=SSH2 DSA key(id_dsa)\0id_dsa\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_ECDSA_FILTER=SSH2 ECDSA key(id_ecdsa)\0id_ecdsa\0All Files(*.*)\0*.*\0\0 -FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\\0id_ed25519\\0All Files(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\0id_ed25519\0All Files(*.*)\0*.*\0\0 ; dlg setup DLG_SSHSETUP_TITLE=TTSSH: Configuration Modified: branches/cmake/installer/release/lang/German.lng =================================================================== --- branches/cmake/installer/release/lang/German.lng 2019-01-10 14:06:21 UTC (rev 7384) +++ branches/cmake/installer/release/lang/German.lng 2019-01-10 14:19:57 UTC (rev 7385) @@ -711,7 +711,7 @@ FILEDLG_SAVE_PUBLICKEY_RSA_FILTER=SSH2 RSA key(id_rsa.pub)\0id_rsa.pub\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PUBLICKEY_DSA_FILTER=SSH2 DSA key(id_dsa.pub)\0id_dsa.pub\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PUBLICKEY_ECDSA_FILTER=SSH2 ECDSA key(id_ecdsa.pub)\0id_ecdsa.pub\0All Files(*.*)\0*.*\0\0 -FILEDLG_SAVE_PUBLICKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519.pub)\\0id_ed25519.pub\\0All Files(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PUBLICKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519.pub)\0id_ed25519.pub\0All Files(*.*)\0*.*\0\0 MSG_SAVE_KEY_OPENFILE_ERROR=Schl\xFCssel kann nicht ge\xF6ffnet werden MSG_SAVE_KEY_WRITEFILE_ERROR=Schl\xFCssel kann nicht speichert werden MSG_SAVE_PRIVATE_KEY_MISMATCH_ERROR=Die Passphrasen stimmen nicht \xFCberein @@ -721,7 +721,7 @@ FILEDLG_SAVE_PRIVATEKEY_RSA_FILTER=SSH2 RSA key(id_rsa)\0id_rsa\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_DSA_FILTER=SSH2 DSA key(id_dsa)\0id_dsa\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_ECDSA_FILTER=SSH2 ECDSA key(id_ecdsa)\0id_ecdsa\0All Files(*.*)\0*.*\0\0 -FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\\0id_ed25519\\0All Files(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\0id_ed25519\0All Files(*.*)\0*.*\0\0 ; dlg setup DLG_SSHSETUP_TITLE=TTSSH: Setup Modified: branches/cmake/installer/release/lang/Japanese.lng =================================================================== --- branches/cmake/installer/release/lang/Japanese.lng 2019-01-10 14:06:21 UTC (rev 7384) +++ branches/cmake/installer/release/lang/Japanese.lng 2019-01-10 14:19:57 UTC (rev 7385) @@ -719,7 +719,7 @@ FILEDLG_SAVE_PRIVATEKEY_RSA_FILTER=SSH2 RSA key(id_rsa)\0id_rsa\0\x82\xB7\x82ׂẴt\x83@\x83C\x83\x8B(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_DSA_FILTER=SSH2 DSA key(id_dsa)\0id_dsa\0\x82\xB7\x82ׂẴt\x83@\x83C\x83\x8B(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_ECDSA_FILTER=SSH2 ECDSA key(id_ecdsa)\0id_ecdsa\0\x82\xB7\x82ׂẴt\x83@\x83C\x83\x8B(*.*)\0*.*\0\0 -FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\\0id_ed25519\\0\x82\xB7\x82ׂẴt\x83@\x83C\x83\x8B(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\0id_ed25519\0\x82\xB7\x82ׂẴt\x83@\x83C\x83\x8B(*.*)\0*.*\0\0 ; dlg setup DLG_SSHSETUP_TITLE=TTSSH: \x90ݒ\xE8 Modified: branches/cmake/installer/release/lang/Korean.lng =================================================================== --- branches/cmake/installer/release/lang/Korean.lng 2019-01-10 14:06:21 UTC (rev 7384) +++ branches/cmake/installer/release/lang/Korean.lng 2019-01-10 14:19:57 UTC (rev 7385) @@ -711,7 +711,7 @@ FILEDLG_SAVE_PUBLICKEY_RSA_FILTER=SSH2 RSA key(id_rsa.pub)\0id_rsa.pub\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PUBLICKEY_DSA_FILTER=SSH2 DSA key(id_dsa.pub)\0id_dsa.pub\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PUBLICKEY_ECDSA_FILTER=SSH2 ECDSA key(id_ecdsa.pub)\0id_ecdsa.pub\0All Files(*.*)\0*.*\0\0 -FILEDLG_SAVE_PUBLICKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519.pub)\\0id_ed25519.pub\\0All Files(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PUBLICKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519.pub)\0id_ed25519.pub\0All Files(*.*)\0*.*\0\0 MSG_SAVE_KEY_OPENFILE_ERROR=Ű \xC6\xC4\xC0\xCF\xC0\xBB \xBF\xAD \xBC\xF6 \xBE\xF8\xBD\xC0\xB4ϴ\xD9 MSG_SAVE_KEY_WRITEFILE_ERROR=Ű \xC6\xC4\xC0\xCF\xC0\xBB \xC0\xFA\xC0\xE5\xC7\xD2 \xBC\xF6 \xBE\xF8\xBD\xC0\xB4ϴ\xD9 MSG_SAVE_PRIVATE_KEY_MISMATCH_ERROR=\xB5ΰ\xB3\xC0\xC7 Ű\xB0\xA1 \xC0\xCFġ\xC7\xCF\xC1\xF6 \xBEʽ\xC0\xB4ϴ\xD9. @@ -721,7 +721,7 @@ FILEDLG_SAVE_PRIVATEKEY_RSA_FILTER=SSH2 RSA key(id_rsa)\0id_rsa\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_DSA_FILTER=SSH2 DSA key(id_dsa)\0id_dsa\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_ECDSA_FILTER=SSH2 ECDSA key(id_ecdsa)\0id_ecdsa\0All Files(*.*)\0*.*\0\0 -FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\\0id_ed25519\\0All Files(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\0id_ed25519\0All Files(*.*)\0*.*\0\0 ; dlg setup DLG_SSHSETUP_TITLE=TTSSH: \xBC\xB3\xC1\xA4 Modified: branches/cmake/installer/release/lang/Russian.lng =================================================================== --- branches/cmake/installer/release/lang/Russian.lng 2019-01-10 14:06:21 UTC (rev 7384) +++ branches/cmake/installer/release/lang/Russian.lng 2019-01-10 14:19:57 UTC (rev 7385) @@ -711,7 +711,7 @@ FILEDLG_SAVE_PUBLICKEY_RSA_FILTER=SSH2 RSA key(id_rsa.pub)\0id_rsa.pub\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PUBLICKEY_DSA_FILTER=SSH2 DSA key(id_dsa.pub)\0id_dsa.pub\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PUBLICKEY_ECDSA_FILTER=SSH2 ECDSA key(id_ecdsa.pub)\0id_ecdsa.pub\0All Files(*.*)\0*.*\0\0 -FILEDLG_SAVE_PUBLICKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519.pub)\\0id_ed25519.pub\\0All Files(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PUBLICKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519.pub)\0id_ed25519.pub\0All Files(*.*)\0*.*\0\0 MSG_SAVE_KEY_OPENFILE_ERROR=\xCD\xE5 \xF3\xE4\xE0\xE5\xF2\xF1\xFF \xEE\xF2\xEA\xF0\xFB\xF2\xFC \xF4\xE0\xE9\xEB \xEA\xEB\xFE\xF7\xE0. MSG_SAVE_KEY_WRITEFILE_ERROR=\xCD\xE5 \xF3\xE4\xE0\xE5\xF2\xF1\xFF \xF1\xEE\xF5\xF0\xE0\xED\xE8\xF2\xFC \xF4\xE0\xE9\xEB \xEA\xEB\xFE\xF7\xE0. MSG_SAVE_PRIVATE_KEY_MISMATCH_ERROR=\xC4\xE2\xE5 \xEA\xEB\xFE\xF7\xE5\xE2\xFB\xE5 \xF4\xF0\xE0\xE7\xFB \xF0\xE0\xE7\xED\xFB\xE5. @@ -721,7 +721,7 @@ FILEDLG_SAVE_PRIVATEKEY_RSA_FILTER=SSH2 RSA key(id_rsa)\0id_rsa\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_DSA_FILTER=SSH2 DSA key(id_dsa)\0id_dsa\0All Files(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_ECDSA_FILTER=SSH2 ECDSA key(id_ecdsa)\0id_ecdsa\0All Files(*.*)\0*.*\0\0 -FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\\0id_ed25519\\0All Files(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\0id_ed25519\0All Files(*.*)\0*.*\0\0 ; dlg setup DLG_SSHSETUP_TITLE=TTSSH: \xD3\xF1\xF2\xE0\xED\xEE\xE2\xEA\xE8 Modified: branches/cmake/installer/release/lang/Simplified Chinese.lng =================================================================== --- branches/cmake/installer/release/lang/Simplified Chinese.lng 2019-01-10 14:06:21 UTC (rev 7384) +++ branches/cmake/installer/release/lang/Simplified Chinese.lng 2019-01-10 14:19:57 UTC (rev 7385) @@ -711,7 +711,7 @@ FILEDLG_SAVE_PUBLICKEY_RSA_FILTER=SSH2 RSA key(id_rsa.pub)\0id_rsa.pub\0\xCB\xF9\xD3\xD0\xCEļ\xFE(*.*)\0*.*\0\0 FILEDLG_SAVE_PUBLICKEY_DSA_FILTER=SSH2 DSA key(id_dsa.pub)\0id_dsa.pub\0\xCB\xF9\xD3\xD0\xCEļ\xFE(*.*)\0*.*\0\0 FILEDLG_SAVE_PUBLICKEY_ECDSA_FILTER=SSH2 DSA key(id_ecdsa.pub)\0id_ecdsa.pub\0\xCB\xF9\xD3\xD0\xCEļ\xFE(*.*)\0*.*\0\0 -FILEDLG_SAVE_PUBLICKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519.pub)\\0id_ed25519.pub\\0All Files(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PUBLICKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519.pub)\0id_ed25519.pub\0All Files(*.*)\0*.*\0\0 MSG_SAVE_KEY_OPENFILE_ERROR=\xB4\xF2\xBF\xAA\xC3\xDCԿ\xCEļ\xFEʧ\xB0\xDC MSG_SAVE_KEY_WRITEFILE_ERROR=д\xC8\xEB\xC3\xDCԿ\xCEļ\xFEʧ\xB0\xDC MSG_SAVE_PRIVATE_KEY_MISMATCH_ERROR=\xC3\xDC\xC2벻ƥ\xC5\xE4 @@ -721,7 +721,7 @@ FILEDLG_SAVE_PRIVATEKEY_RSA_FILTER=SSH2 RSA key(id_rsa)\0id_rsa\0\xCB\xF9\xD3\xD0\xCEļ\xFE(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_DSA_FILTER=SSH2 DSA key(id_dsa)\0id_dsa\0\xCB\xF9\xD3\xD0\xCEļ\xFE(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_ECDSA_FILTER=SSH2 ECDSA key(id_ecdsa)\0id_ecdsa\0\xCB\xF9\xD3\xD0\xCEļ\xFE(*.*)\0*.*\0\0 -FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\\0id_ed25519\\0All Files(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\0id_ed25519\0All Files(*.*)\0*.*\0\0 ; dlg setup DLG_SSHSETUP_TITLE=TTSSH\xA3\xBA\xC9\xE8\xD6\xC3 Modified: branches/cmake/installer/release/lang/Traditional Chinese.lng =================================================================== --- branches/cmake/installer/release/lang/Traditional Chinese.lng 2019-01-10 14:06:21 UTC (rev 7384) +++ branches/cmake/installer/release/lang/Traditional Chinese.lng 2019-01-10 14:19:57 UTC (rev 7385) @@ -711,7 +711,7 @@ FILEDLG_SAVE_PUBLICKEY_RSA_FILTER=SSH2 RSA key(id_rsa.pub)\0id_rsa.pub\0\xA9Ҧ\xB3\xA4\xE5\xA5\xF3(*.*)\0*.*\0\0 FILEDLG_SAVE_PUBLICKEY_DSA_FILTER=SSH2 DSA key(id_dsa.pub)\0id_dsa.pub\0\xA9Ҧ\xB3\xA4\xE5\xA5\xF3(*.*)\0*.*\0\0 FILEDLG_SAVE_PUBLICKEY_ECDSA_FILTER=SSH2 DSA key(id_ecdsa.pub)\0id_ecdsa.pub\0\xA9Ҧ\xB3\xA4\xE5\xA5\xF3(*.*)\0*.*\0\0 -FILEDLG_SAVE_PUBLICKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519.pub)\\0id_ed25519.pub\\0All Files(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PUBLICKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519.pub)\0id_ed25519.pub\0All Files(*.*)\0*.*\0\0 MSG_SAVE_KEY_OPENFILE_ERROR=\xA5\xB4\xB6}\xB1K\xC6_\xA4\xE5\xA5\xD1 MSG_SAVE_KEY_WRITEFILE_ERROR=\xBCg\xA4J\xB1K\xC6_\xA4\xE5\xA5\xD1 MSG_SAVE_PRIVATE_KEY_MISMATCH_ERROR=\xB1K\xBDX\xA4\xA3\xB2ŦX @@ -721,7 +721,7 @@ FILEDLG_SAVE_PRIVATEKEY_RSA_FILTER=SSH2 RSA key(id_rsa)\0id_rsa\0\xA9Ҧ\xB3\xA4\xE5\xA5\xF3(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_DSA_FILTER=SSH2 DSA key(id_dsa)\0id_dsa\0\xA9Ҧ\xB3\xA4\xE5\xA5\xF3(*.*)\0*.*\0\0 FILEDLG_SAVE_PRIVATEKEY_ECDSA_FILTER=SSH2 ECDSA key(id_ecdsa)\0id_ecdsa\0\xA9Ҧ\xB3\xA4\xE5\xA5\xF3(*.*)\0*.*\0\0 -FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\\0id_ed25519\\0All Files(*.*)\\0*.*\\0\\0 +FILEDLG_SAVE_PRIVATEKEY_ED25519_FILTER=SSH2 ED25519 key(id_ed25519)\0id_ed25519\0All Files(*.*)\0*.*\0\0 ; dlg setup DLG_SSHSETUP_TITLE=TTSSH\xA1G\xB3]\xA9w Modified: branches/cmake/teraterm/common/codeconv.cpp =================================================================== --- branches/cmake/teraterm/common/codeconv.cpp 2019-01-10 14:06:21 UTC (rev 7384) +++ branches/cmake/teraterm/common/codeconv.cpp 2019-01-10 14:19:57 UTC (rev 7385) @@ -90,8 +90,11 @@ */ wchar_t *_MultiByteToWideChar(const char *str_ptr, size_t str_len, int code_page, size_t *w_len_) { - const DWORD flags = MB_ERR_INVALID_CHARS; - wchar_t *wstr_ptr; + DWORD flags = MB_ERR_INVALID_CHARS; + if (code_page == CP_UTF8) { + // CP_UTF8 When this is set, dwFlags must be zero. + flags = 0; + } if (w_len_ != NULL) { *w_len_ = 0; } @@ -104,7 +107,7 @@ if (len == 0) { return NULL; } - wstr_ptr = (wchar_t *)malloc(len*sizeof(wchar_t)); + wchar_t *wstr_ptr = (wchar_t *)malloc(len*sizeof(wchar_t)); if (wstr_ptr == NULL) { return NULL; } @@ -121,13 +124,11 @@ return wstr_ptr; } -//#if defined(UNICODE) const char *ToCharW(const wchar_t *strW) { const char *strA = _WideCharToMultiByte(strW, 0, CP_ACP, NULL); return strA; } -//#endif const char *ToCharA(const char *strA) { @@ -137,40 +138,29 @@ const char *ToCharU8(const char *strU8) { const wchar_t *strW = _MultiByteToWideChar(strU8, 0, CP_UTF8, NULL); + if (strW == NULL) { + return NULL; + } const char *strA = _WideCharToMultiByte(strW, 0, CP_ACP, NULL); free((void *)strW); return strA; } -const TCHAR *ToTcharA(const char *strA) +const wchar_t *ToWcharA(const char *strA) { -#if defined(UNICODE) wchar_t *strW = _MultiByteToWideChar(strA, 0, CP_ACP, NULL); return strW; -#else - return ToCharA(strA); -#endif } -const TCHAR *ToTcharW(const wchar_t *strW) +const wchar_t *ToWcharW(const wchar_t *strW) { -#if defined(UNICODE) return _wcsdup(strW); -#else - return ToCharW(strW); -#endif } -const TCHAR *ToTcharU8(const char *strU8) +const wchar_t *ToWcharU8(const char *strU8) { const wchar_t *strW = _MultiByteToWideChar(strU8, 0, CP_UTF8, NULL); -#if defined(UNICODE) return strW; -#else - const char *strA = _WideCharToMultiByte(strW, 0, CP_ACP, NULL); - free((void *)strW); - return strA; -#endif } const char *ToU8W(const wchar_t *strW) Modified: branches/cmake/teraterm/common/codeconv.h =================================================================== --- branches/cmake/teraterm/common/codeconv.h 2019-01-10 14:06:21 UTC (rev 7384) +++ branches/cmake/teraterm/common/codeconv.h 2019-01-10 14:19:57 UTC (rev 7385) @@ -37,22 +37,27 @@ char *_WideCharToMultiByte(const wchar_t *wstr_ptr, size_t wstr_len, int code_page, size_t *mb_len_); wchar_t *_MultiByteToWideChar(const char *str_ptr, size_t str_len, int code_page, size_t *w_len_); -const TCHAR *ToTcharA(const char *strA); -const TCHAR *ToTcharW(const wchar_t *strW); -const TCHAR *ToTcharU8(const char *strU8); const char *ToCharA(const char *strA); const char *ToCharW(const wchar_t *strW); const char *ToCharU8(const char *strU8); const wchar_t *ToWcharA(const char *strA); +const wchar_t *ToWcharW(const wchar_t *strW); +const wchar_t *ToWcharU8(const char *strU8); const char *ToU8A(const char *strA); const char *ToU8W(const wchar_t *strW); #if defined(_UNICODE) -#define ToCharT(s) ToCharW(s) -#define ToU8T(s) ToU8W(s) +#define ToTcharA(s) ToWcharA(s) +#define ToTcharW(s) ToWcharW(s) +#define ToTcharU8(s) ToWcharU8(s) +#define ToCharT(s) ToCharW(s) +#define ToU8T(s) ToU8W(s) #else -#define ToCharT(s) ToCharA(s) -#define ToU8T(s) ToU8A(s) +#define ToTcharA(s) ToCharA(s) +#define ToTcharW(s) ToCharW(s) +#define ToTcharU8(s) ToCharU8(s) +#define ToCharT(s) ToCharA(s) +#define ToU8T(s) ToU8A(s) #endif #ifdef __cplusplus @@ -60,13 +65,7 @@ #endif #ifdef __cplusplus -TCHAR *ToTchar(const char *strA); -TCHAR *ToTchar(const wchar_t *strW); -#endif - -#ifdef __cplusplus - #if defined(__GNUC__) || (defined(_MSC_VER) && (_MSC_VER > 1910)) #define MOVE_CONSTRUCTOR_ENABLE #endif