Sebastian Lackner : kernel32: DeleteFile should open the file without read /write permissions.

Alexandre Julliard julliard at wine.codeweavers.com
Wed Nov 11 08:36:43 CST 2015


Module: wine
Branch: master
Commit: 71581f71d5b1155b056a8d815fe0036479dd54fd
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=71581f71d5b1155b056a8d815fe0036479dd54fd

Author: Sebastian Lackner <sebastian at fds-team.de>
Date:   Wed Nov 11 01:21:55 2015 +0100

kernel32: DeleteFile should open the file without read/write permissions.

Signed-off-by: Sebastian Lackner <sebastian at fds-team.de>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/kernel32/file.c       | 3 +--
 dlls/kernel32/tests/file.c | 2 --
 2 files changed, 1 insertion(+), 4 deletions(-)

diff --git a/dlls/kernel32/file.c b/dlls/kernel32/file.c
index 40fbd40..b6dba6a 100644
--- a/dlls/kernel32/file.c
+++ b/dlls/kernel32/file.c
@@ -1683,8 +1683,7 @@ BOOL WINAPI DeleteFileW( LPCWSTR path )
     attr.SecurityDescriptor = NULL;
     attr.SecurityQualityOfService = NULL;
 
-    status = NtCreateFile(&hFile, GENERIC_READ | GENERIC_WRITE | SYNCHRONIZE | DELETE,
-			  &attr, &io, NULL, 0,
+    status = NtCreateFile(&hFile, SYNCHRONIZE | DELETE, &attr, &io, NULL, 0,
 			  FILE_SHARE_READ | FILE_SHARE_WRITE | FILE_SHARE_DELETE,
 			  FILE_OPEN, FILE_DELETE_ON_CLOSE | FILE_NON_DIRECTORY_FILE, NULL, 0);
     if (status == STATUS_SUCCESS) status = NtClose(hFile);
diff --git a/dlls/kernel32/tests/file.c b/dlls/kernel32/tests/file.c
index 91abb03..4ad1da8 100644
--- a/dlls/kernel32/tests/file.c
+++ b/dlls/kernel32/tests/file.c
@@ -1794,14 +1794,12 @@ static void test_DeleteFileA( void )
 
     SetLastError(0xdeadbeef);
     ret = DeleteFileA(temp_file);
-todo_wine
     ok(ret, "DeleteFile error %d\n", GetLastError());
 
     SetLastError(0xdeadbeef);
     ret = CloseHandle(hfile);
     ok(ret, "CloseHandle error %d\n", GetLastError());
     ret = DeleteFileA(temp_file);
-todo_wine
     ok(!ret, "DeleteFile should fail\n");
 
     SetLastError(0xdeadbeef);




More information about the wine-cvs mailing list