• R/O
  • SSH
  • HTTPS

ttssh2: Commit


Commit MetaInfo

Revision6602 (tree)
Time2017-02-22 03:05:13
Authordoda

Log Message

行内では CP932 に fallback した事を覚えておくようにした。

Change Summary

Incremental Difference

--- trunk/teraterm/teraterm/vtterm.c (revision 6601)
+++ trunk/teraterm/teraterm/vtterm.c (revision 6602)
@@ -132,6 +132,7 @@
132132 /* JIS -> SJIS conversion flag */
133133 static BOOL ConvJIS;
134134 static WORD Kanji;
135+static BOOL Fallbacked;
135136
136137 // variables for status line mode
137138 static int StatusX=0;
@@ -342,6 +343,7 @@
342343 EUCsupIn = FALSE;
343344 SSflag = FALSE;
344345 ConvJIS = FALSE;
346+ Fallbacked = FALSE;
345347
346348 cv.Language = ts.Language;
347349 cv.CRSend = ts.CRSend;
@@ -512,6 +514,8 @@
512514 MoveCursor(CursorLeftM, CursorY);
513515 else if (CursorX < CursorLeftM)
514516 MoveCursor(0, CursorY);
517+
518+ Fallbacked = FALSE;
515519 }
516520
517521 void LineFeed(BYTE b, BOOL logFlag)
@@ -537,6 +541,8 @@
537541 #endif /* NO_COPYLINE_FIX */
538542
539543 if (LFMode) CarriageReturn(logFlag);
544+
545+ Fallbacked = FALSE;
540546 }
541547
542548 void Tab()
@@ -1801,6 +1807,7 @@
18011807 else
18021808 MoveCursor(CursorX,Param[1]-1);
18031809 }
1810+ Fallbacked = FALSE;
18041811 }
18051812
18061813 void CSMoveToXY() // CUP / HVP
@@ -1831,6 +1838,7 @@
18311838 }
18321839
18331840 MoveCursor(NewX, NewY);
1841+ Fallbacked = FALSE;
18341842 }
18351843
18361844 void CSDeleteTabStop()
@@ -4923,6 +4931,7 @@
49234931
49244932 if (ts.KanjiCode==IdSJIS || ts.KanjiCode==IdUTF8 || ts.KanjiCode==IdUTF8m) {
49254933 if ((0x80<b) && (b<0xa0) || (0xdf<b) && (b<0xfd)) {
4934+ Fallbacked = TRUE;
49264935 return TRUE; // SJIS kanji
49274936 }
49284937 if ((0xa1<=b) && (b<=0xdf)) {
@@ -5316,6 +5325,11 @@
53165325
53175326 locptr = setlocale(LC_ALL, ts.Locale);
53185327
5328+ if (Fallbacked) {
5329+ ParseFirstJP(b);
5330+ return;
5331+ }
5332+
53195333 if ((b & 0x80) != 0x80 || ((b & 0xe0) == 0x80 && count == 0)) {
53205334 // 1バイト目および2バイト目がASCIIの場合は、すべてASCII出力とする。
53215335 // 1バイト目がC1制御文字(0x80-0x9f)の場合も同様。
Show on old repository browser