OSDN Git Service

Change error handling for file transfer.
authors_kawamoto <s_kawamoto@users.sourceforge.jp>
Sat, 1 Nov 2014 03:12:21 +0000 (12:12 +0900)
committers_kawamoto <s_kawamoto@users.sourceforge.jp>
Sat, 1 Nov 2014 03:12:21 +0000 (12:12 +0900)
Modify documents.

12 files changed:
FFFTP_Eng_Release/FFFTP.exe
FFFTP_Eng_Release_64/FFFTP.exe
Release/FFFTP.exe
Release_64/FFFTP.exe
common.h
doc/eng/FFFTP.txt
doc/eng/history.txt
doc/jpn/FFFTP.txt
doc/jpn/history.txt
ftpproc.c
hostman.c
main.c

index 164d86c..0dc109f 100644 (file)
Binary files a/FFFTP_Eng_Release/FFFTP.exe and b/FFFTP_Eng_Release/FFFTP.exe differ
index d06877e..aed2bd3 100644 (file)
Binary files a/FFFTP_Eng_Release_64/FFFTP.exe and b/FFFTP_Eng_Release_64/FFFTP.exe differ
index 587307c..f18eae4 100644 (file)
Binary files a/Release/FFFTP.exe and b/Release/FFFTP.exe differ
index 11b2a8b..3ca9ade 100644 (file)
Binary files a/Release_64/FFFTP.exe and b/Release_64/FFFTP.exe differ
index 3e452dc..83ff79c 100644 (file)
--- a/common.h
+++ b/common.h
@@ -1669,6 +1669,8 @@ void ReformVMSDirName(char *DirName, int Flg);
 #endif\r
 // 自動切断対策\r
 void NoopProc(int Force);\r
+// 同時接続対応\r
+void AbortRecoveryProc(void);\r
 \r
 /*===== local.c =====*/\r
 \r
index 046ff55..5374360 100644 (file)
@@ -92,6 +92,8 @@ Changes in Ver.1.99
    before it.\r
    This feature is enabled by default.\r
 \r
+-- Changed to enable reconnection after transfer errors by default.\r
+\r
 \r
 Outline\r
 -------\r
index 24abcb6..b0b75a3 100644 (file)
@@ -64,6 +64,8 @@ Changes in Ver.1.99
    before it.\r
    This feature is enabled by default.\r
 \r
+-- Changed to enable reconnection after transfer errors by default.\r
+\r
 Changes in Ver.1.98g2\r
 --------------------\r
 \r
index 1d1644e..582d2bf 100644 (file)
@@ -96,6 +96,8 @@ Ver 1.99
 \81@\92\86\8e~\82·\82é\90Ý\92è\82ð\92Ç\89Á\82µ\82Ü\82µ\82½\81B\r
 \81@\82±\82Ì\8b@\94\\82Í\8aù\92è\82Å\82Í\97L\8cø\82É\82È\82è\82Ü\82·\81B\r
 \r
+\81E\83t\83@\83C\83\8b\82Ì\93]\91\97\82É\8e¸\94s\82µ\82½\8fê\8d\87\82É\8dÄ\90Ú\91±\82·\82é\90Ý\92è\82ð\8aù\92è\82Å\97L\8cø\82É\82µ\82Ü\82µ\82½\81B\r
+\r
 \r
 Ver 1.96d\88È\91O\82Ö\96ß\82·\8fê\8d\87\r
 -----------------------\r
index 3dd5fb0..27e3fbb 100644 (file)
@@ -68,6 +68,8 @@ FFFTP
 \81@\92\86\8e~\82·\82é\90Ý\92è\82ð\92Ç\89Á\82µ\82Ü\82µ\82½\81B\r
 \81@\82±\82Ì\8b@\94\\82Í\8aù\92è\82Å\82Í\97L\8cø\82É\82È\82è\82Ü\82·\81B\r
 \r
+\81E\83t\83@\83C\83\8b\82Ì\93]\91\97\82É\8e¸\94s\82µ\82½\8fê\8d\87\82É\8dÄ\90Ú\91±\82·\82é\90Ý\92è\82ð\8aù\92è\82Å\97L\8cø\82É\82µ\82Ü\82µ\82½\81B\r
+\r
 \81¡Ver 1.98g2\r
 \r
 \81E\83C\83\93\83X\83g\81[\83\89\94Å\82ÉZIP\94Å\82Ì\83t\83@\83C\83\8b\82ª\8d¬\93ü\82µ\82Ä\82¢\82½\96â\91è\82ð\8fC\90³\82µ\82Ü\82µ\82½\81B\r
index 2d88ca0..70db171 100644 (file)
--- a/ftpproc.c
+++ b/ftpproc.c
@@ -3787,3 +3787,22 @@ void NoopProc(int Force)
        }\r
 }\r
 \r
+// 同時接続対応\r
+void AbortRecoveryProc(void)\r
+{\r
+       CancelFlg = NO;\r
+       if(AskReuseCmdSkt() == NO || AskShareProh() == YES || AskTransferNow() == NO)\r
+       {\r
+               if(AskErrorReconnect() == YES)\r
+               {\r
+                       DisableUserOpe();\r
+                       ReConnectCmdSkt();\r
+                       GetRemoteDirForWnd(CACHE_REFRESH, &CancelFlg);\r
+                       EnableUserOpe();\r
+               }\r
+               else\r
+                       RemoveReceivedData(AskCmdCtrlSkt());\r
+       }\r
+       return;\r
+}\r
+\r
index bcb5ac2..0cbd2e3 100644 (file)
--- a/hostman.c
+++ b/hostman.c
@@ -1435,7 +1435,7 @@ void CopyDefaultDefaultHost(HOSTDATA *Set)
        Set->TransferErrorMode = EXIST_OVW;\r
        Set->TransferErrorNotify = YES;\r
        // セッションあたりの転送量制限対策\r
-       Set->TransferErrorReconnect = NO;\r
+       Set->TransferErrorReconnect = YES;\r
        return;\r
 }\r
 \r
diff --git a/main.c b/main.c
index 211045f..100bbad 100644 (file)
--- a/main.c
+++ b/main.c
@@ -1167,8 +1167,8 @@ static LRESULT CALLBACK FtpWndProc(HWND hWnd, UINT message, WPARAM wParam, LPARA
                case WM_COMMAND :\r
                        // 同時接続対応\r
                        // 中断後に受信バッファに応答が残っていると次のコマンドの応答が正しく処理できない\r
-                       if(CancelFlg == YES)\r
-                               RemoveReceivedData(AskCmdCtrlSkt());\r
+                       if(AskUserOpeDisabled() == NO && CancelFlg == YES)\r
+                               AbortRecoveryProc();\r
                        switch(LOWORD(wParam))\r
                        {\r
                                case MENU_CONNECT :\r
@@ -2513,6 +2513,9 @@ static void ExitProc(HWND hWnd)
 \r
        CancelFlg = YES;\r
 \r
+       // バグ対策\r
+       DisableUserOpe();\r
+\r
        CloseTransferThread();\r
 \r
        if(SaveExit == YES)\r