[Ttssh2-commit] [8710] 正規表現マクロコマンドを正しく動作するよう修正

Back to archive index
scmno****@osdn***** scmno****@osdn*****
2020年 4月 12日 (日) 00:57:03 JST


Revision: 8710
          https://osdn.net/projects/ttssh2/scm/svn/commits/8710
Author:   zmatsuo
Date:     2020-04-12 00:57:03 +0900 (Sun, 12 Apr 2020)
Log Message:
-----------
正規表現マクロコマンドを正しく動作するよう修正

- strreplace
- regexoption
  - デフォルトを変更 ENCODING_ASCII -> ENCODING_UTF8

Modified Paths:
--------------
    trunk/teraterm/ttpmacro/ttl.cpp
    trunk/teraterm/ttpmacro/ttmdde.c

-------------- next part --------------
Modified: trunk/teraterm/ttpmacro/ttl.cpp
===================================================================
--- trunk/teraterm/ttpmacro/ttl.cpp	2020-04-11 15:56:55 UTC (rev 8709)
+++ trunk/teraterm/ttpmacro/ttl.cpp	2020-04-11 15:57:03 UTC (rev 8710)
@@ -4623,12 +4623,10 @@
 WORD TTLStrReplace()
 {
 	WORD Err, VarType;
-	TVarId VarId;
+	TVarId DestVarId;
 	TStrVal oldstr;
 	TStrVal newstr;
 	TStrVal tmpstr;
-	const char *srcptr;
-	const char *matchptr;
 	char *p;
 	int srclen, oldlen, matchlen;
 	int pos, ret;
@@ -4635,7 +4633,7 @@
 	int result = 0;
 
 	Err = 0;
-	GetStrVar(&VarId,&Err);
+	GetStrVar(&DestVarId,&Err);
 	GetIntVal(&pos,&Err);
 	GetStrVal(oldstr,&Err);
 	GetStrVal(newstr,&Err);
@@ -4643,7 +4641,7 @@
 		Err = ErrSyntax;
 	if (Err!=0) return Err;
 
-	srcptr = StrVarPtr(VarId);
+	const char *srcptr = StrVarPtr(DestVarId);
 	srclen = strlen(srcptr);
 
 	if (pos > srclen || pos <= 0) {
@@ -4673,9 +4671,10 @@
 	}
 	ret--;
 
-	if (CheckVar("matchstr",&VarType,&VarId) &&
+	TVarId MatchVarId;
+	if (CheckVar("matchstr",&VarType,&MatchVarId) &&
 		(VarType==TypString)) {
-		matchptr = StrVarPtr(VarId);
+		const char *matchptr = StrVarPtr(MatchVarId);
 		matchlen = strlen(matchptr);
 	} else {
 		result = 0;
@@ -4686,7 +4685,7 @@
 	strncpy_s(dest, sizeof(dest), tmpstr, pos + ret);
 	strncat_s(dest, sizeof(dest), newstr, _TRUNCATE);
 	strncat_s(dest, sizeof(dest), tmpstr + pos + ret + matchlen, _TRUNCATE);
-	SetStrVal(VarId, dest);
+	SetStrVal(DestVarId, dest);
 
 	result = 1;
 

Modified: trunk/teraterm/ttpmacro/ttmdde.c
===================================================================
--- trunk/teraterm/ttpmacro/ttmdde.c	2020-04-11 15:56:55 UTC (rev 8709)
+++ trunk/teraterm/ttpmacro/ttmdde.c	2020-04-11 15:57:03 UTC (rev 8710)
@@ -55,7 +55,7 @@
 BOOL Wait2Found;
 
 OnigOptionType RegexOpt = ONIG_OPTION_NONE;
-OnigEncoding RegexEnc = ONIG_ENCODING_ASCII;
+OnigEncoding RegexEnc = ONIG_ENCODING_UTF8;
 OnigSyntaxType *RegexSyntax = ONIG_SYNTAX_RUBY;
 
 #define ServiceName "TERATERM"


Ttssh2-commit メーリングリストの案内
Back to archive index