svnno****@sourc*****
svnno****@sourc*****
2010年 2月 25日 (木) 18:30:57 JST
Revision: 3797 http://sourceforge.jp/projects/ttssh2/svn/view?view=rev&revision=3797 Author: doda Date: 2010-02-25 18:30:57 +0900 (Thu, 25 Feb 2010) Log Message: ----------- Alternate screen buffer 切り替え時のカーソル位置保存の不具合を修正。 Normal screen と Alternate screen でカーソル位置の保存を別に管理する必要があった。 Modified Paths: -------------- trunk/teraterm/teraterm/vtterm.c -------------- next part -------------- Modified: trunk/teraterm/teraterm/vtterm.c =================================================================== --- trunk/teraterm/teraterm/vtterm.c 2010-02-23 10:30:54 UTC (rev 3796) +++ trunk/teraterm/teraterm/vtterm.c 2010-02-25 09:30:57 UTC (rev 3797) @@ -67,7 +67,7 @@ typedef TStatusBuff *PStatusBuff; // status buffer for main screen & status line -static TStatusBuff SBuff1, SBuff2; +static TStatusBuff SBuff1, SBuff2, SBuff3; static BOOL ESCFlag, JustAfterESC; static BOOL KanjiIn; @@ -151,6 +151,7 @@ SBuff1.RelativeOrgMode = FALSE; // copy SBuff1 to SBuff2 SBuff2 = SBuff1; + SBuff3 = SBuff1; } void ResetTerminal() /*reset variables but don't update screen */ @@ -875,6 +876,8 @@ if ((StatusLine>0) && (CursorY==NumOfLines-1)) Buff = &SBuff2; // for status line + else if (AltScr) + Buff = &SBuff3; // for alternate screen else Buff = &SBuff1; // for main screen @@ -898,6 +901,8 @@ if ((StatusLine>0) && (CursorY==NumOfLines-1)) Buff = &SBuff2; // for status line + else if (AltScr) + Buff = &SBuff3; // for alternate screen else Buff = &SBuff1; // for main screen