Paul Vriens : wininet/ftp.c: Fix some returned error codes.
Alexandre Julliard
julliard at wine.codeweavers.com
Fri Feb 9 08:22:08 CST 2007
Module: wine
Branch: master
Commit: 1f5e5a2b75ae689b56a11d8577d908f7afb21ab5
URL: http://source.winehq.org/git/wine.git/?a=commit;h=1f5e5a2b75ae689b56a11d8577d908f7afb21ab5
Author: Paul Vriens <paul.vriens.wine at gmail.com>
Date: Thu Feb 8 17:27:57 2007 +0100
wininet/ftp.c: Fix some returned error codes.
---
dlls/wininet/ftp.c | 17 ++++++++++++++---
dlls/wininet/tests/ftp.c | 2 --
2 files changed, 14 insertions(+), 5 deletions(-)
diff --git a/dlls/wininet/ftp.c b/dlls/wininet/ftp.c
index 4e99dae..1d9224b 100644
--- a/dlls/wininet/ftp.c
+++ b/dlls/wininet/ftp.c
@@ -507,12 +507,24 @@ BOOL WINAPI FtpCreateDirectoryW(HINTERNE
BOOL r = FALSE;
lpwfs = (LPWININETFTPSESSIONW) WININET_GetObject( hConnect );
- if (NULL == lpwfs || WH_HFTPSESSION != lpwfs->hdr.htype)
+ if (!lpwfs)
+ {
+ INTERNET_SetLastError(ERROR_INVALID_HANDLE);
+ return FALSE;
+ }
+
+ if (WH_HFTPSESSION != lpwfs->hdr.htype)
{
INTERNET_SetLastError(ERROR_INTERNET_INCORRECT_HANDLE_TYPE);
goto lend;
}
+ if (!lpszDirectory)
+ {
+ INTERNET_SetLastError(ERROR_INVALID_PARAMETER);
+ goto lend;
+ }
+
hIC = lpwfs->lpAppInfo;
if (hIC->hdr.dwFlags & INTERNET_FLAG_ASYNC)
{
@@ -531,8 +543,7 @@ BOOL WINAPI FtpCreateDirectoryW(HINTERNE
r = FTP_FtpCreateDirectoryW(lpwfs, lpszDirectory);
}
lend:
- if( lpwfs )
- WININET_Release( &lpwfs->hdr );
+ WININET_Release( &lpwfs->hdr );
return r;
}
diff --git a/dlls/wininet/tests/ftp.c b/dlls/wininet/tests/ftp.c
index 3a5fa70..d5a4a6f 100644
--- a/dlls/wininet/tests/ftp.c
+++ b/dlls/wininet/tests/ftp.c
@@ -106,7 +106,6 @@ static void test_createdir(void)
SetLastError(0xdeadbeef);
bRet = FtpCreateDirectoryA(NULL, "new_directory_deadbeef");
ok ( bRet == FALSE, "Expected FtpCreateDirectoryA to fail\n");
- todo_wine
ok ( GetLastError() == ERROR_INVALID_HANDLE,
"Expected ERROR_INVALID_HANDLE, got %d\n", GetLastError());
@@ -125,7 +124,6 @@ static void test_createdir(void)
SetLastError(0xdeadbeef);
bRet = FtpCreateDirectoryA(hFtp, NULL);
ok ( bRet == FALSE, "Expected FtpCreateDirectoryA to fail\n");
- todo_wine
ok ( GetLastError() == ERROR_INVALID_PARAMETER,
"Expected ERROR_INVALID_PARAMETER, got %d\n", GetLastError());
More information about the wine-cvs
mailing list