[Ttssh2-commit] [4653] コマンドライン引数の作成時に、^A-^_ が含まれる場合には " で囲むようにした

Back to archive index

svnno****@sourc***** svnno****@sourc*****
2011年 9月 24日 (土) 11:16:02 JST


Revision: 4653
          http://sourceforge.jp/projects/ttssh2/svn/view?view=rev&revision=4653
Author:   maya
Date:     2011-09-24 11:16:02 +0900 (Sat, 24 Sep 2011)

Log Message:
-----------
コマンドライン引数の作成時に、^A-^_ が含まれる場合には " で囲むようにした

Modified Paths:
--------------
    trunk/ttpmenu/ttpmenu.cpp
    trunk/ttssh2/ttxssh/ttxssh.c


-------------- next part --------------
Modified: trunk/ttpmenu/ttpmenu.cpp
===================================================================
--- trunk/ttpmenu/ttpmenu.cpp	2011-09-24 01:02:21 UTC (rev 4652)
+++ trunk/ttpmenu/ttpmenu.cpp	2011-09-24 02:16:02 UTC (rev 4653)
@@ -1105,8 +1105,40 @@
 
 static void dquote_string(char *str, char *dst, int dst_len)
 {
-	// " ‚ÅŽn‚Ü‚é‚©AƒXƒy[ƒX‚ªŠÜ‚Ü‚ê‚éê‡‚ɂ̓NƒI[ƒg‚·‚é
-	if (str[0] == '"' || strchr(str, '" ') != NULL) {
+	// ",ƒXƒy[ƒX,^A-^_ ‚ªŠÜ‚Ü‚ê‚éê‡‚ɂ̓NƒI[ƒg‚·‚é
+	if (strchr(str, '"') != NULL ||
+	    strchr(str, ' ') != NULL ||
+	    strchr(str, 0x01) != NULL ||
+	    strchr(str, 0x02) != NULL ||
+	    strchr(str, 0x03) != NULL ||
+	    strchr(str, 0x04) != NULL ||
+	    strchr(str, 0x05) != NULL ||
+	    strchr(str, 0x06) != NULL ||
+	    strchr(str, 0x07) != NULL ||
+	    strchr(str, 0x08) != NULL ||
+	    strchr(str, 0x09) != NULL ||
+	    strchr(str, 0x0a) != NULL ||
+	    strchr(str, 0x0b) != NULL ||
+	    strchr(str, 0x0c) != NULL ||
+	    strchr(str, 0x0d) != NULL ||
+	    strchr(str, 0x0e) != NULL ||
+	    strchr(str, 0x0f) != NULL ||
+	    strchr(str, 0x10) != NULL ||
+	    strchr(str, 0x11) != NULL ||
+	    strchr(str, 0x12) != NULL ||
+	    strchr(str, 0x13) != NULL ||
+	    strchr(str, 0x14) != NULL ||
+	    strchr(str, 0x15) != NULL ||
+	    strchr(str, 0x16) != NULL ||
+	    strchr(str, 0x17) != NULL ||
+	    strchr(str, 0x18) != NULL ||
+	    strchr(str, 0x19) != NULL ||
+	    strchr(str, 0x1a) != NULL ||
+	    strchr(str, 0x1b) != NULL ||
+	    strchr(str, 0x1c) != NULL ||
+	    strchr(str, 0x1d) != NULL ||
+	    strchr(str, 0x1e) != NULL ||
+	    strchr(str, 0x1f) != NULL) {
 		_dquote_string(str, dst, dst_len);
 		return;
 	}

Modified: trunk/ttssh2/ttxssh/ttxssh.c
===================================================================
--- trunk/ttssh2/ttxssh/ttxssh.c	2011-09-24 01:02:21 UTC (rev 4652)
+++ trunk/ttssh2/ttxssh/ttxssh.c	2011-09-24 02:16:02 UTC (rev 4653)
@@ -4789,8 +4789,40 @@
 
 static void dquote_string(char *str, char *dst, int dst_len)
 {
-	// " ‚ÅŽn‚Ü‚é‚©AƒXƒy[ƒX‚ªŠÜ‚Ü‚ê‚éê‡‚ɂ̓NƒI[ƒg‚·‚é
-	if (str[0] == '"' || strchr(str, '" ') != NULL) {
+	// ",ƒXƒy[ƒX,^A-^_ ‚ªŠÜ‚Ü‚ê‚éê‡‚ɂ̓NƒI[ƒg‚·‚é
+	if (strchr(str, '"') != NULL ||
+	    strchr(str, ' ') != NULL ||
+	    strchr(str, 0x01) != NULL ||
+	    strchr(str, 0x02) != NULL ||
+	    strchr(str, 0x03) != NULL ||
+	    strchr(str, 0x04) != NULL ||
+	    strchr(str, 0x05) != NULL ||
+	    strchr(str, 0x06) != NULL ||
+	    strchr(str, 0x07) != NULL ||
+	    strchr(str, 0x08) != NULL ||
+	    strchr(str, 0x09) != NULL ||
+	    strchr(str, 0x0a) != NULL ||
+	    strchr(str, 0x0b) != NULL ||
+	    strchr(str, 0x0c) != NULL ||
+	    strchr(str, 0x0d) != NULL ||
+	    strchr(str, 0x0e) != NULL ||
+	    strchr(str, 0x0f) != NULL ||
+	    strchr(str, 0x10) != NULL ||
+	    strchr(str, 0x11) != NULL ||
+	    strchr(str, 0x12) != NULL ||
+	    strchr(str, 0x13) != NULL ||
+	    strchr(str, 0x14) != NULL ||
+	    strchr(str, 0x15) != NULL ||
+	    strchr(str, 0x16) != NULL ||
+	    strchr(str, 0x17) != NULL ||
+	    strchr(str, 0x18) != NULL ||
+	    strchr(str, 0x19) != NULL ||
+	    strchr(str, 0x1a) != NULL ||
+	    strchr(str, 0x1b) != NULL ||
+	    strchr(str, 0x1c) != NULL ||
+	    strchr(str, 0x1d) != NULL ||
+	    strchr(str, 0x1e) != NULL ||
+	    strchr(str, 0x1f) != NULL) {
 		_dquote_string(str, dst, dst_len);
 		return;
 	}



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