• R/O
  • HTTP
  • SSH
  • HTTPS

コミット

タグ
未設定

よく使われているワード(クリックで追加)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

FFFTPのソースコードです。


コミットメタ情報

リビジョンe9a6d523e00faf31fcec49598aaea96681d5b53c (tree)
日時2012-02-16 23:16:12
作者s_kawamoto <s_kawamoto@user...>
コミッターs_kawamoto

ログメッセージ

Fix bugs of hanging on exit.

変更サマリ

差分

Binary files a/FFFTP_Eng_Release/FFFTP.exe and b/FFFTP_Eng_Release/FFFTP.exe differ
Binary files a/Release/FFFTP.exe and b/Release/FFFTP.exe differ
--- a/socket.c
+++ b/socket.c
@@ -930,7 +930,9 @@ SOCKET do_accept(SOCKET s, struct sockaddr *addr, int *addrlen)
930930 DoPrintf("## Async set: FD_CONNECT|FD_CLOSE|FD_ACCEPT|FD_READ|FD_WRITE");
931931 #endif
932932 RegistAsyncTable(Ret2);
933- if(WSAAsyncSelect(Ret2, hWndSocket, WM_ASYNC_SOCKET, FD_CONNECT | FD_CLOSE | FD_ACCEPT | FD_READ | FD_WRITE) == SOCKET_ERROR)
933+ // 高速化のためFD_READとFD_WRITEを使用しない
934+// if(WSAAsyncSelect(Ret2, hWndSocket, WM_ASYNC_SOCKET, FD_CONNECT | FD_CLOSE | FD_ACCEPT | FD_READ | FD_WRITE) == SOCKET_ERROR)
935+ if(WSAAsyncSelect(Ret2, hWndSocket, WM_ASYNC_SOCKET, FD_CONNECT | FD_CLOSE | FD_ACCEPT) == SOCKET_ERROR)
934936 {
935937 do_closesocket(Ret2);
936938 Ret2 = INVALID_SOCKET;
@@ -1190,10 +1192,10 @@ void RemoveReceivedData(SOCKET s)
11901192 {
11911193 char buf[1024];
11921194 int len;
1193- int Error;
1194- while((len = FTPS_recv(s, buf, sizeof(buf), MSG_PEEK)) >= 0)
1195+// int Error;
1196+ while((len = FTPS_recv(s, buf, sizeof(buf), MSG_PEEK)) > 0)
11951197 {
1196- AskAsyncDone(s, &Error, FD_READ);
1198+// AskAsyncDone(s, &Error, FD_READ);
11971199 FTPS_recv(s, buf, len, 0);
11981200 }
11991201 }