[PATCH] ntdll: Return STATUS_INVALID_DEVICE_REQUEST when trying to call NtReadFile on directory.
Zebediah Figura
z.figura12 at gmail.com
Thu Feb 4 18:05:00 CST 2021
From: Sebastian Lackner <sebastian at fds-team.de>
Signed-off-by: Zebediah Figura <z.figura12 at gmail.com>
---
dlls/ntdll/tests/file.c | 1 -
dlls/ntdll/unix/file.c | 2 +-
2 files changed, 1 insertion(+), 2 deletions(-)
diff --git a/dlls/ntdll/tests/file.c b/dlls/ntdll/tests/file.c
index 2507437c8c3..839046a7488 100644
--- a/dlls/ntdll/tests/file.c
+++ b/dlls/ntdll/tests/file.c
@@ -171,7 +171,6 @@ static void create_file_test(void)
U(io).Status = 0xdeadbeef;
offset.QuadPart = 0;
status = pNtReadFile( dir, NULL, NULL, NULL, &io, buf, sizeof(buf), &offset, NULL );
- todo_wine
ok( status == STATUS_INVALID_DEVICE_REQUEST || status == STATUS_PENDING, "NtReadFile error %08x\n", status );
if (status == STATUS_PENDING)
{
diff --git a/dlls/ntdll/unix/file.c b/dlls/ntdll/unix/file.c
index c41d6bbfa6c..68ce40eb700 100644
--- a/dlls/ntdll/unix/file.c
+++ b/dlls/ntdll/unix/file.c
@@ -344,7 +344,7 @@ NTSTATUS errno_to_status( int err )
case EACCES: return STATUS_ACCESS_DENIED;
case ENOTDIR: return STATUS_OBJECT_PATH_NOT_FOUND;
case ENOENT: return STATUS_OBJECT_NAME_NOT_FOUND;
- case EISDIR: return STATUS_FILE_IS_A_DIRECTORY;
+ case EISDIR: return STATUS_INVALID_DEVICE_REQUEST;
case EMFILE:
case ENFILE: return STATUS_TOO_MANY_OPENED_FILES;
case EINVAL: return STATUS_INVALID_PARAMETER;
--
2.20.1
More information about the wine-devel
mailing list