• R/O
  • HTTP
  • SSH
  • HTTPS

Commit

Tags
Keine Tags

Frequently used words (click to add to your profile)

javaandroidc++linuxc#objective-ccocoa誰得qtrubybathyscaphegamephpguicwindows翻訳pythonomegattwitterframeworkbtronarduinovb.net計画中(planning stage)directxpreviewertestゲームエンジンdom

FFFTPのソースコードです。


Commit MetaInfo

Revision1970bc4212a46498a13f7e010701729156842689 (tree)
Zeit2016-06-14 21:45:08
Autors_kawamoto <s_kawamoto@user...>
Commiters_kawamoto

Log Message

Fix bugs of drag-and-drop handling.
Change behavior of workaround for deadlock.

Ändern Zusammenfassung

Diff

Binary files a/FFFTP_Eng_Release/FFFTP.exe and b/FFFTP_Eng_Release/FFFTP.exe differ
Binary files a/FFFTP_Eng_Release_64/FFFTP.exe and b/FFFTP_Eng_Release_64/FFFTP.exe differ
Binary files a/Release/FFFTP.exe and b/Release/FFFTP.exe differ
Binary files a/Release_64/FFFTP.exe and b/Release_64/FFFTP.exe differ
--- a/Resource/FFFTP.rc
+++ b/Resource/FFFTP.rc
@@ -242,7 +242,7 @@ FONT 9, "MS Shell Dlg", 0, 0, 0x0
242242 BEGIN
243243 DEFPUSHBUTTON "OK",IDOK,133,294,50,14
244244 ICON ffftp,-1,7,4,20,20
245- CTEXT "FFFTP Ver 1.99a",-1,113,11,90,8
245+ CTEXT "FFFTP Ver 1.99a-20160614",-1,113,11,90,8
246246 CTEXT "FFFTPはfreewareです",-1,7,279,305,8
247247 CTEXT "Copyright(C) 1997-2010 Sota & ご協力いただいた方々\nCopyright (C) 2011-2016 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, うなー, Asami, fortran90, tomo1192, Yuji Tanaka, Moriguchi Hirokazu, ふうせん)",-1,7,25,305,44,SS_NOPREFIX
248248 CTEXT "",ABOUT_JRE,7,96,305,8
@@ -2213,8 +2213,8 @@ nodrop_csr CURSOR "nodrop_c.cur"
22132213 //
22142214
22152215 VS_VERSION_INFO VERSIONINFO
2216- FILEVERSION 1,99,1,0
2217- PRODUCTVERSION 1,99,1,0
2216+ FILEVERSION 1,99,1,1
2217+ PRODUCTVERSION 1,99,1,1
22182218 FILEFLAGSMASK 0x3fL
22192219 #ifdef _DEBUG
22202220 FILEFLAGS 0x1L
@@ -2232,12 +2232,12 @@ BEGIN
22322232 VALUE "Comments", "これはフリーソフトウエアです。"
22332233 VALUE "CompanyName", "Sota, FFFTP Project"
22342234 VALUE "FileDescription", "FFFTP"
2235- VALUE "FileVersion", "1, 99, 1, 0"
2235+ VALUE "FileVersion", "1, 99, 1, 1"
22362236 VALUE "InternalName", "FFFTP"
22372237 VALUE "LegalCopyright", "Copyright (C) 1997-2010 Sota & ご協力いただいた方々\nCopyright (C) 2011-2016 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, うなー, Asami, fortran90, tomo1192, Yuji Tanaka, Moriguchi Hirokazu, ふうせん)."
22382238 VALUE "OriginalFilename", "FFFTP.exe"
22392239 VALUE "ProductName", "FFFTP"
2240- VALUE "ProductVersion", "1, 99, 1, 0"
2240+ VALUE "ProductVersion", "1, 99, 1, 1"
22412241 END
22422242 END
22432243 BLOCK "VarFileInfo"
--- a/Resource_eng/ffftp.rc
+++ b/Resource_eng/ffftp.rc
@@ -242,7 +242,7 @@ FONT 9, "MS Shell Dlg", 0, 0, 0x0
242242 BEGIN
243243 DEFPUSHBUTTON "OK",IDOK,132,296,50,14
244244 ICON ffftp,-1,7,4,20,20
245- CTEXT "FFFTP Ver 1.99a",-1,110,11,90,8
245+ CTEXT "FFFTP Ver 1.99a-20160614",-1,110,11,90,8
246246 CTEXT "FFFTP is freeware",-1,7,281,301,8
247247 CTEXT "Copyright(C) 1997-2010 Sota && cooperators\nCopyright (C) 2011-2016 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192, Yuji Tanaka, Moriguchi Hirokazu, Fu-sen)",-1,7,25,301,44
248248 CTEXT "",ABOUT_JRE,7,93,301,8
@@ -2253,8 +2253,8 @@ nodrop_csr CURSOR "nodrop_c.cur"
22532253 //
22542254
22552255 VS_VERSION_INFO VERSIONINFO
2256- FILEVERSION 1,99,1,0
2257- PRODUCTVERSION 1,99,1,0
2256+ FILEVERSION 1,99,1,1
2257+ PRODUCTVERSION 1,99,1,1
22582258 FILEFLAGSMASK 0x3fL
22592259 #ifdef _DEBUG
22602260 FILEFLAGS 0x1L
@@ -2272,12 +2272,12 @@ BEGIN
22722272 VALUE "Comments", "This software is Free Software"
22732273 VALUE "CompanyName", "Sota, FFFTP Project"
22742274 VALUE "FileDescription", "FFFTP"
2275- VALUE "FileVersion", "1, 99, 1, 0"
2275+ VALUE "FileVersion", "1, 99, 1, 1"
22762276 VALUE "InternalName", "FFFTP"
22772277 VALUE "LegalCopyright", "Copyright (C) 1997-2010 Sota & cooperators\nCopyright (C) 2011-2016 FFFTP Project (Hiromichi Matsushima, Suguru Kawamoto, IWAMOTO Kouichi, vitamin0x, unarist, Asami, fortran90, tomo1192, Yuji Tanaka, Moriguchi Hirokazu, Fu-sen)."
22782278 VALUE "OriginalFilename", "FFFTP.exe"
22792279 VALUE "ProductName", "FFFTP"
2280- VALUE "ProductVersion", "1, 99, 1, 0"
2280+ VALUE "ProductVersion", "1, 99, 1, 1"
22812281 END
22822282 END
22832283 BLOCK "VarFileInfo"
--- a/common.h
+++ b/common.h
@@ -72,16 +72,16 @@
7272 //#define PROGRAM_VERSION_NUM 1972 /* バージョン */
7373 // 64ビット対応
7474 #ifdef _WIN64
75-#define VER_STR "1.99a 64bit"
75+#define VER_STR "1.99a-20160614 64bit"
7676 #else
77-#define VER_STR "1.99a"
77+#define VER_STR "1.99a-20160614"
7878 #endif
7979 #define VER_NUM 1990 /* 設定バージョン */
8080 #define PROGRAM_VERSION_NUM 1990 /* バージョン */
8181 // ソフトウェア自動更新
8282 // リリースバージョンはリリース予定年(10進数4桁)+月(2桁)+日(2桁)+通し番号(0スタート2桁)とする
8383 // 2014年7月31日中の30個目のリリースは2014073129
84-#define RELEASE_VERSION_NUM 2016051400 /* リリースバージョン */
84+#define RELEASE_VERSION_NUM 2016061400 /* リリースバージョン */
8585
8686
8787 // SourceForge.JPによるフォーク
--- a/filelist.c
+++ b/filelist.c
@@ -178,6 +178,8 @@ static int IgnoreOld = NO;
178178 static int IgnoreExist = NO;
179179
180180 static int Dragging = NO;
181+// 特定の操作を行うと異常終了するバグ修正
182+static int DragFirstTime = NO;
181183
182184 static int StratusMode; /* 0=ファイル, 1=ディレクトリ, 2=リンク */
183185
@@ -542,7 +544,9 @@ static void doTransferRemoteFile(void)
542544 // FFFTPにダウンロード要求を出し、ダウンロードの完了を待つ。
543545 PostMessage(GetMainHwnd(), WM_COMMAND, MAKEWPARAM(MENU_DOWNLOAD, 0), 0);
544546
545- for (i = 0 ; i < 10 ; i++) {
547+ // 特定の操作を行うと異常終了するバグ修正
548+// for (i = 0 ; i < 10 ; i++) {
549+ for (i = 0 ; i < 1000 ; i++) {
546550 MSG msg;
547551
548552 if (PeekMessage(&msg, NULL, 0, 0, PM_REMOVE)) {
@@ -561,7 +565,20 @@ static void doTransferRemoteFile(void)
561565 // OLE D&D中にメインウィンドウをユーザに操作させると、おかしくなるので、
562566 // 隠しモーダルダイアログを作る。
563567 // (2007.9.11 yutaka)
564- DialogBox(GetFtpInst(), MAKEINTRESOURCE(IDD_OLEDRAG), GetMainHwnd(), (DLGPROC)doOleDlgProc);
568+ // 特定の操作を行うと異常終了するバグ修正
569+// DialogBox(GetFtpInst(), MAKEINTRESOURCE(IDD_OLEDRAG), GetMainHwnd(), (DLGPROC)doOleDlgProc);
570+ while(1)
571+ {
572+ MSG msg;
573+ if(PeekMessage(&msg, NULL, 0, 0, PM_REMOVE))
574+ {
575+ TranslateMessage(&msg);
576+ DispatchMessage(&msg);
577+ }
578+ else if(AskTransferNow() == NO)
579+ break;
580+ Sleep(10);
581+ }
565582
566583 // ダウンロード先を元に戻す
567584 SetLocalDirHist(LocDir);
@@ -897,6 +914,8 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
897914 return(CallWindowProc(ProcPtr, hWnd, message, wParam, lParam));
898915
899916 case WM_DRAGDROP:
917+ // 特定の操作を行うと異常終了するバグ修正
918+ DragFirstTime = YES;
900919 // OLE D&Dを開始する (yutaka)
901920 doDragDrop(hWnd, message, wParam, lParam);
902921 return (TRUE);
@@ -920,9 +939,13 @@ static LRESULT FileListCommonWndProc(HWND hWnd, UINT message, WPARAM wParam, LPA
920939 char *PathDir;
921940
922941 // 特定の操作を行うと異常終了するバグ修正
923- GetCursorPos(&Point);
924- hWndPnt = WindowFromPoint(Point);
925- hWndParent = GetParent(hWndPnt);
942+ if(DragFirstTime == YES)
943+ {
944+ GetCursorPos(&Point);
945+ hWndPnt = WindowFromPoint(Point);
946+ hWndParent = GetParent(hWndPnt);
947+ }
948+ DragFirstTime = NO;
926949 DisableUserOpe();
927950 CancelFlg = NO;
928951
--- a/toolmenu.c
+++ b/toolmenu.c
@@ -927,6 +927,9 @@ void EnableUserOpe(void)
927927 // バグ修正
928928 // HideUI = NO;
929929
930+ // バグ修正
931+ SetFocus(GetMainHwnd());
932+
930933 MakeButtonsFocus();
931934 }
932935 return;