Module: wine Branch: master Commit: 4adce67cf6e477d38fa425bc15af297c197e6ecf URL: http://source.winehq.org/git/wine.git/?a=commit;h=4adce67cf6e477d38fa425bc15...
Author: Jacek Caban jacek@codeweavers.com Date: Mon Dec 25 21:34:39 2006 +0100
wininet: Use proc instead of enum in FTPUTFILE request.
---
dlls/wininet/ftp.c | 19 +++++++++++++++++-- dlls/wininet/internet.c | 15 --------------- dlls/wininet/internet.h | 1 - 3 files changed, 17 insertions(+), 18 deletions(-)
diff --git a/dlls/wininet/ftp.c b/dlls/wininet/ftp.c index 961a915..5c97758 100644 --- a/dlls/wininet/ftp.c +++ b/dlls/wininet/ftp.c @@ -180,6 +180,20 @@ BOOL WINAPI FtpPutFileA(HINTERNET hConne * FALSE on failure * */ +static void AsyncFtpPutFileProc(WORKREQUEST *workRequest) +{ + struct WORKREQ_FTPPUTFILEW const *req = &workRequest->u.FtpPutFileW; + LPWININETFTPSESSIONW lpwfs = (LPWININETFTPSESSIONW) workRequest->hdr; + + TRACE("%p\n", lpwfs); + + FTP_FtpPutFileW(lpwfs, req->lpszLocalFile, + req->lpszNewRemoteFile, req->dwFlags, req->dwContext); + + HeapFree(GetProcessHeap(), 0, req->lpszLocalFile); + HeapFree(GetProcessHeap(), 0, req->lpszNewRemoteFile); +} + BOOL WINAPI FtpPutFileW(HINTERNET hConnect, LPCWSTR lpszLocalFile, LPCWSTR lpszNewRemoteFile, DWORD dwFlags, DWORD dwContext) { @@ -200,8 +214,9 @@ BOOL WINAPI FtpPutFileW(HINTERNET hConne WORKREQUEST workRequest; struct WORKREQ_FTPPUTFILEW *req = &workRequest.u.FtpPutFileW;
- workRequest.asyncall = FTPPUTFILEW; - workRequest.hdr = WININET_AddRef( &lpwfs->hdr ); + workRequest.asyncall = CALLASYNCPROC; + workRequest.asyncproc = AsyncFtpPutFileProc; + workRequest.hdr = WININET_AddRef( &lpwfs->hdr ); req->lpszLocalFile = WININET_strdupW(lpszLocalFile); req->lpszNewRemoteFile = WININET_strdupW(lpszNewRemoteFile); req->dwFlags = dwFlags; diff --git a/dlls/wininet/internet.c b/dlls/wininet/internet.c index 5ef39ea..eb45c95 100644 --- a/dlls/wininet/internet.c +++ b/dlls/wininet/internet.c @@ -3243,21 +3243,6 @@ static VOID INTERNET_ExecuteWork(void) workRequest.asyncproc(&workRequest); break;
- case FTPPUTFILEW: - { - struct WORKREQ_FTPPUTFILEW *req = &workRequest.u.FtpPutFileW; - LPWININETFTPSESSIONW lpwfs = (LPWININETFTPSESSIONW) workRequest.hdr; - - TRACE("FTPPUTFILEW %p\n", lpwfs); - - FTP_FtpPutFileW(lpwfs, req->lpszLocalFile, - req->lpszNewRemoteFile, req->dwFlags, req->dwContext); - - HeapFree(GetProcessHeap(), 0, req->lpszLocalFile); - HeapFree(GetProcessHeap(), 0, req->lpszNewRemoteFile); - } - break; - case FTPSETCURRENTDIRECTORYW: { struct WORKREQ_FTPSETCURRENTDIRECTORYW *req; diff --git a/dlls/wininet/internet.h b/dlls/wininet/internet.h index ee9c2d6..3e0a034 100644 --- a/dlls/wininet/internet.h +++ b/dlls/wininet/internet.h @@ -250,7 +250,6 @@ typedef struct typedef enum { CALLASYNCPROC, - FTPPUTFILEW, FTPSETCURRENTDIRECTORYW, FTPCREATEDIRECTORYW, FTPFINDFIRSTFILEW,