Module: wine Branch: master Commit: 059c77956f0de0f15b7305221fa3e4c81f01af98 URL: http://source.winehq.org/git/wine.git/?a=commit;h=059c77956f0de0f15b7305221f...
Author: Jacek Caban jacek@codeweavers.com Date: Wed Jan 30 11:38:22 2013 +0100
wininet: Moved WORKREQ_FTPGETCURRENTDIRECTORYW out of WORKREQUEST.
---
dlls/wininet/ftp.c | 25 ++++++++++++++----------- dlls/wininet/internet.h | 7 ------- 2 files changed, 14 insertions(+), 18 deletions(-)
diff --git a/dlls/wininet/ftp.c b/dlls/wininet/ftp.c index 6694edb..0adce0a 100644 --- a/dlls/wininet/ftp.c +++ b/dlls/wininet/ftp.c @@ -936,15 +936,20 @@ BOOL WINAPI FtpGetCurrentDirectoryA(HINTERNET hFtpSession, LPSTR lpszCurrentDire return ret; }
+typedef struct { + task_header_t hdr; + WCHAR *directory; + DWORD *directory_len; +} get_current_dir_task_t;
-static void AsyncFtpGetCurrentDirectoryProc(WORKREQUEST *workRequest) +static void AsyncFtpGetCurrentDirectoryProc(task_header_t *hdr) { - struct WORKREQ_FTPGETCURRENTDIRECTORYW const *req = &workRequest->u.FtpGetCurrentDirectoryW; - ftp_session_t *lpwfs = (ftp_session_t*) workRequest->hdr; + get_current_dir_task_t *task = (get_current_dir_task_t*)hdr; + ftp_session_t *session = (ftp_session_t*)task->hdr.hdr;
- TRACE("%p\n", lpwfs); + TRACE("%p\n", session);
- FTP_FtpGetCurrentDirectoryW(lpwfs, req->lpszDirectory, req->lpdwDirectory); + FTP_FtpGetCurrentDirectoryW(session, task->directory, task->directory_len); }
/*********************************************************************** @@ -1000,15 +1005,13 @@ BOOL WINAPI FtpGetCurrentDirectoryW(HINTERNET hFtpSession, LPWSTR lpszCurrentDir hIC = lpwfs->lpAppInfo; if (hIC->hdr.dwFlags & INTERNET_FLAG_ASYNC) { - WORKREQUEST *task; - struct WORKREQ_FTPGETCURRENTDIRECTORYW *req; + get_current_dir_task_t *task;
task = alloc_async_task(&lpwfs->hdr, AsyncFtpGetCurrentDirectoryProc, sizeof(*task)); - req = &task->u.FtpGetCurrentDirectoryW; - req->lpszDirectory = lpszCurrentDirectory; - req->lpdwDirectory = lpdwCurrentDirectory; + task->directory = lpszCurrentDirectory; + task->directory_len = lpdwCurrentDirectory;
- r = res_to_le(INTERNET_AsyncCall(task)); + r = res_to_le(INTERNET_AsyncCall(&task->hdr)); } else { diff --git a/dlls/wininet/internet.h b/dlls/wininet/internet.h index 628f0c0..4dd0abe 100644 --- a/dlls/wininet/internet.h +++ b/dlls/wininet/internet.h @@ -363,12 +363,6 @@ struct WORKREQ_FTPFINDFIRSTFILEW DWORD_PTR dwContext; };
-struct WORKREQ_FTPGETCURRENTDIRECTORYW -{ - LPWSTR lpszDirectory; - DWORD *lpdwDirectory; -}; - struct WORKREQ_FTPOPENFILEW { LPWSTR lpszFilename; @@ -403,7 +397,6 @@ typedef struct WORKREQ
union { struct WORKREQ_FTPFINDFIRSTFILEW FtpFindFirstFileW; - struct WORKREQ_FTPGETCURRENTDIRECTORYW FtpGetCurrentDirectoryW; struct WORKREQ_FTPOPENFILEW FtpOpenFileW; struct WORKREQ_FTPDELETEFILEW FtpDeleteFileW; struct WORKREQ_FTPRENAMEFILEW FtpRenameFileW;