Revision: 9988 https://osdn.net/projects/ttssh2/scm/svn/commits/9988 Author: zmatsuo Date: 2022-06-04 22:17:12 +0900 (Sat, 04 Jun 2022) Log Message: ----------- Unicode を ISO8859 に変換できなかった場合 '?' を出力するようにした Modified Paths: -------------- trunk/teraterm/teraterm/unicode.cpp trunk/teraterm/ttpcmn/ttcmn.c -------------- next part -------------- Modified: trunk/teraterm/teraterm/unicode.cpp =================================================================== --- trunk/teraterm/teraterm/unicode.cpp 2022-06-04 13:17:02 UTC (rev 9987) +++ trunk/teraterm/teraterm/unicode.cpp 2022-06-04 13:17:12 UTC (rev 9988) @@ -380,6 +380,12 @@ /** * Unicode\x82\xA9\x82\xE7ISO8859\x82֕ϊ\xB7 + * + * @param[in] part IS8859\x82̕\x94 1...11,13...16 + * @param[in] u32 Unicode + * @param[out] *b ISO8859 char + * @retval 0 \x95ϊ\xB7\x82ł\xAB\x82Ȃ\xA2 + * @retval 1 \x95ϊ\xB7\x82ł\xAB\x82\xBD */ int UnicodeToISO8859(int part, unsigned long u32, unsigned char *b) { Modified: trunk/teraterm/ttpcmn/ttcmn.c =================================================================== --- trunk/teraterm/ttpcmn/ttcmn.c 2022-06-04 13:17:02 UTC (rev 9987) +++ trunk/teraterm/ttpcmn/ttcmn.c 2022-06-04 13:17:12 UTC (rev 9988) @@ -1353,6 +1353,10 @@ char byte; int part = KanjiCodeToISO8859Part(states->KanjiCode); int r = UnicodeToISO8859(part, u32, &byte); + if (r == 0) { + // \x95ϊ\xB7\x82ł\xAB\x82Ȃ\xA2\x95\xB6\x8E\x9A\x83R\x81[\x83h\x82\xBE\x82\xC1\x82\xBD + byte = '?'; + } TempStr[TempLen++] = byte; } else { assert(FALSE);