FFFTPのソースコードです。
Revision | 1047258aa5921c6b4f501f4e7dc08bfbbdf628cc (tree) |
---|---|
Zeit | 2015-11-30 22:24:15 |
Autor | s_kawamoto <s_kawamoto@user...> |
Commiter | s_kawamoto |
Fix bugs of drag-and-drop handling.
@@ -81,7 +81,7 @@ | ||
81 | 81 | // ソフトウェア自動更新 |
82 | 82 | // リリースバージョンはリリース予定年(10進数4桁)+月(2桁)+日(2桁)+通し番号(0スタート2桁)とする |
83 | 83 | // 2014年7月31日中の30個目のリリースは2014073129 |
84 | -#define RELEASE_VERSION_NUM 2015112901 /* リリースバージョン */ | |
84 | +#define RELEASE_VERSION_NUM 2015113000 /* リリースバージョン */ | |
85 | 85 | |
86 | 86 | |
87 | 87 | // SourceForge.JPによるフォーク |
@@ -136,6 +136,8 @@ extern HWND hHelpWin; | ||
136 | 136 | extern int SuppressRefresh; |
137 | 137 | // ローカル側自動更新 |
138 | 138 | extern HANDLE ChangeNotification; |
139 | +// 特定の操作を行うと異常終了するバグ修正 | |
140 | +extern int CancelFlg; | |
139 | 141 | |
140 | 142 | /* 設定値 */ |
141 | 143 | extern int LocalWidth; |
@@ -478,7 +480,8 @@ static BOOL CALLBACK doOleDlgProc(HWND hDlg, UINT msg, WPARAM wp, LPARAM lp) | ||
478 | 480 | static void doTransferRemoteFile(void) |
479 | 481 | { |
480 | 482 | FILELIST *FileListBase, *FileListBaseNoExpand, *pf; |
481 | - int CancelFlg = NO; | |
483 | + // 特定の操作を行うと異常終了するバグ修正 | |
484 | +// int CancelFlg = NO; | |
482 | 485 | char LocDir[FMAX_PATH+1]; |
483 | 486 | char TmpDir[FMAX_PATH+1]; |
484 | 487 | // 環境依存の不具合対策 |
@@ -909,13 +912,18 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA | ||
909 | 912 | int i, j, filenum = 0; |
910 | 913 | |
911 | 914 | FILELIST *FileListBase, *FileListBaseNoExpand, *pf; |
912 | - int CancelFlg = NO; | |
915 | + // 特定の操作を行うと異常終了するバグ修正 | |
916 | +// int CancelFlg = NO; | |
913 | 917 | char LocDir[FMAX_PATH+1]; |
914 | 918 | char *PathDir; |
915 | 919 | |
916 | 920 | // 特定の操作を行うと異常終了するバグ修正 |
921 | + GetCursorPos(&Point); | |
922 | + hWndPnt = WindowFromPoint(Point); | |
923 | + hWndParent = GetParent(hWndPnt); | |
917 | 924 | DisableUserOpe(); |
918 | 925 | Dragging = NO; |
926 | + CancelFlg = NO; | |
919 | 927 | |
920 | 928 | // 変数が未初期化のバグ修正 |
921 | 929 | FileListBaseNoExpand = NULL; |
@@ -931,9 +939,10 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA | ||
931 | 939 | FileListBaseNoExpand = FileListBase; |
932 | 940 | |
933 | 941 | } else if (hWndDragStart == hWndListRemote) { |
934 | - GetCursorPos(&Point); | |
935 | - hWndPnt = WindowFromPoint(Point); | |
936 | - hWndParent = GetParent(hWndPnt); | |
942 | + // 特定の操作を行うと異常終了するバグ修正 | |
943 | +// GetCursorPos(&Point); | |
944 | +// hWndPnt = WindowFromPoint(Point); | |
945 | +// hWndParent = GetParent(hWndPnt); | |
937 | 946 | if (hWndPnt == hWndListRemote || hWndPnt == hWndListLocal || |
938 | 947 | hWndParent == hWndListRemote || hWndParent == hWndListLocal) { |
939 | 948 | FileListBase = NULL; |
@@ -3824,7 +3824,7 @@ void AbortRecoveryProc(void) | ||
3824 | 3824 | if(AskErrorReconnect() == YES) |
3825 | 3825 | { |
3826 | 3826 | DisableUserOpe(); |
3827 | - ReConnectCmdSkt(); | |
3827 | + ReConnectCmdSkt(); | |
3828 | 3828 | GetRemoteDirForWnd(CACHE_REFRESH, &CancelFlg); |
3829 | 3829 | EnableUserOpe(); |
3830 | 3830 | } |