\r
if(strchr("dl", *Str) != NULL)\r
{\r
- if((_mbscmp(_mbsninc(Fname, _mbslen(Fname) - 1), "/") == 0) ||\r
- (_mbscmp(_mbsninc(Fname, _mbslen(Fname) - 1), "\\") == 0))\r
- {\r
- *(Fname + strlen(Fname) - 1) = NUL;\r
- }\r
+ // 0x5Cが含まれる文字列を扱えないバグ修正\r
+// if((_mbscmp(_mbsninc(Fname, _mbslen(Fname) - 1), "/") == 0) ||\r
+// (_mbscmp(_mbsninc(Fname, _mbslen(Fname) - 1), "\\") == 0))\r
+// {\r
+// *(Fname + strlen(Fname) - 1) = NUL;\r
+// }\r
Ret = NODE_DIR;\r
if(*Str == 'l')\r
*Link = YES;\r
Ret = NODE_NONE;\r
else\r
ChangeFnameRemote2Local(Fname, FMAX_PATH);\r
+ // 0x5Cが含まれる文字列を扱えないバグ修正\r
+ if((_mbscmp(_mbsninc(Fname, _mbslen(Fname) - 1), "/") == 0)\r
+ || (_mbscmp(_mbsninc(Fname, _mbslen(Fname) - 1), "\\") == 0))\r
+ *(Fname + strlen(Fname) - 1) = NUL;\r
}\r
return(Ret);\r
}\r
char Local[FMAX_PATH+1];\r
char Remote[FMAX_PATH+1];\r
\r
+ // 同時接続対応\r
+ CancelFlg = NO;\r
+\r
+ // デッドロック対策\r
+ DisableUserOpe();\r
Sync = AskSyncMoveMode();\r
if(Sync == YES)\r
{\r
GetRemoteDirForWnd(CACHE_NORMAL, &CancelFlg);\r
}\r
}\r
+ // デッドロック対策\r
+ EnableUserOpe();\r
return;\r
}\r
\r
if(strlen(Tmp) < FMAX_PATH)\r
{\r
strcpy(Buf, Tmp);\r
- ReplaceAll(Buf, '\\', '/');\r
+ // 0x5Cが含まれる文字列を扱えないバグ修正\r
+// ReplaceAll(Buf, '\\', '/');\r
ChangeSepaRemote2Local(Buf);\r
ChangeFnameRemote2Local(Buf, FMAX_PATH);\r
+ // 0x5Cが含まれる文字列を扱えないバグ修正\r
+ ReplaceAll(Buf, '\\', '/');\r
}\r
else\r
Sts = FTP_ERROR*100;\r
char *Buf;\r
char *Pos;\r
CODECONVINFO cInfo;\r
+ // バッファ上書きバグ対策\r
+ char *Buf2;\r
\r
Sts = FFFTP_FAIL;\r
if((Buf = malloc(Max)) != NULL)\r
{\r
+ // バッファ上書きバグ対策\r
+ if((Buf2 = malloc(strlen(Fname) + 1)) != NULL)\r
+ {\r
InitCodeConvInfo(&cInfo);\r
cInfo.KanaCnv = NO; //AskHostNameKana();\r
- cInfo.Str = Fname;\r
+ // バッファ上書きバグ対策\r
+// cInfo.Str = Fname;\r
+ strcpy(Buf2, Fname);\r
+ cInfo.Str = Buf2;\r
cInfo.StrLen = strlen(Fname);\r
cInfo.Buf = Buf;\r
cInfo.BufSize = Max - 1;\r
// strcpy(Pos, Buf);\r
// break;\r
}\r
- free(Buf);\r
+ // バッファ上書きバグ対策\r
+ free(Buf2);\r
Sts = FFFTP_SUCCESS;\r
+ }\r
+ free(Buf);\r
+ // バッファ上書きバグ対策\r
+// Sts = FFFTP_SUCCESS;\r
}\r
return(Sts);\r
}\r
char *Buf;\r
char *Pos;\r
CODECONVINFO cInfo;\r
+ // バッファ上書きバグ対策\r
+ char *Buf2;\r
\r
Sts = FFFTP_FAIL;\r
if((Buf = malloc(Max)) != NULL)\r
{\r
+ // バッファ上書きバグ対策\r
+ if((Buf2 = malloc(strlen(Fname) + 1)) != NULL)\r
+ {\r
InitCodeConvInfo(&cInfo);\r
cInfo.KanaCnv = AskHostNameKana();\r
- cInfo.Str = Fname;\r
+ // バッファ上書きバグ対策\r
+// cInfo.Str = Fname;\r
+ strcpy(Buf2, Fname);\r
+ cInfo.Str = Buf2;\r
cInfo.StrLen = strlen(Fname);\r
cInfo.Buf = Buf;\r
cInfo.BufSize = Max - 1;\r
// strcpy(Pos, Buf);\r
// break;\r
}\r
- free(Buf);\r
+ // バッファ上書きバグ対策\r
+ free(Buf2);\r
Sts = FFFTP_SUCCESS;\r
+ }\r
+ free(Buf);\r
+ // バッファ上書きバグ対策\r
+// Sts = FFFTP_SUCCESS;\r
}\r
return(Sts);\r
}\r