svnno****@sourc*****
svnno****@sourc*****
2011年 2月 1日 (火) 14:27:33 JST
Revision: 4291 http://sourceforge.jp/projects/ttssh2/svn/view?view=rev&revision=4291 Author: doda Date: 2011-02-01 14:27:32 +0900 (Tue, 01 Feb 2011) Log Message: ----------- DCS/SOS/APC/PM の直後の文字が正しく表示できないのを修正。 Modified Paths: -------------- trunk/teraterm/teraterm/vtterm.c -------------- next part -------------- Modified: trunk/teraterm/teraterm/vtterm.c =================================================================== --- trunk/teraterm/teraterm/vtterm.c 2011-01-31 04:16:03 UTC (rev 4290) +++ trunk/teraterm/teraterm/vtterm.c 2011-02-01 05:27:32 UTC (rev 4291) @@ -95,7 +95,7 @@ static BYTE IntChar[IntCharMax+1]; static int ICount; static BYTE Prv; -static int ParseMode, SavedMode; +static int ParseMode; static int ChangeEmu; /* user defined keys */ @@ -936,7 +936,6 @@ SSflag = TRUE; break; case DCS: - SavedMode = ParseMode; ESCFlag = FALSE; ICount = 0; NParam = 1; @@ -945,7 +944,6 @@ ParseMode = ModeDCS; break; case SOS: - SavedMode = ParseMode; ESCFlag = FALSE; ParseMode = ModeSOS; break; @@ -963,7 +961,6 @@ break; case PM: case APC: - SavedMode = ParseMode; ESCFlag = FALSE; ParseMode = ModeSOS; break; @@ -1285,14 +1282,12 @@ SSflag = TRUE; break; case 'P': /* DCS */ - SavedMode = ParseMode; ESCFlag = FALSE; NParam = 1; Param[1] = -1; ParseMode = ModeDCS; return; case 'X': /* SOS */ - SavedMode = ParseMode; ESCFlag = FALSE; ParseMode = ModeSOS; return; @@ -1313,7 +1308,6 @@ return; case '^': case '_': /* PM, APC */ - SavedMode = ParseMode; ESCFlag = FALSE; ParseMode = ModeSOS; return; @@ -3175,7 +3169,7 @@ ParseDCS(Cmd, StrBuff, StrLen); } ESCFlag = FALSE; - ParseMode = SavedMode; + ParseMode = ModeFirst; DcsParseMode = ModeDcsFirst; StrLen = 0; return; @@ -3229,7 +3223,7 @@ case ModeDcsString: if (b <= US && b != HT && b != CR) { ESCFlag = FALSE; - ParseMode = SavedMode; + ParseMode = ModeFirst; DcsParseMode = ModeDcsFirst; StrLen = 0; } @@ -3246,7 +3240,7 @@ { if (! WaitKeyId) DefineUserKey(NewKeyId,NewKeyStr,NewKeyLen); ESCFlag = FALSE; - ParseMode = SavedMode; + ParseMode = ModeFirst; return; } @@ -3302,7 +3296,7 @@ if ((ESCFlag && (b=='\\')) || (b<=US && b!=ESC && b!=HT) || (b==ST && ts.KanjiCode!=IdSJIS)) - ParseMode = SavedMode; + ParseMode = ModeFirst; if (b==ESC) ESCFlag = TRUE; else ESCFlag = FALSE;