ntdll: More mappings from errno to ntstatus

André Hentschel nerv at dawncrow.de
Fri Jul 22 13:05:12 CDT 2011


---
 dlls/ntdll/file.c |    7 +++++++
 1 files changed, 7 insertions(+), 0 deletions(-)

diff --git a/dlls/ntdll/file.c b/dlls/ntdll/file.c
index 4d49956..90a89d4 100644
--- a/dlls/ntdll/file.c
+++ b/dlls/ntdll/file.c
@@ -322,6 +322,7 @@ NTSTATUS FILE_GetNtStatus(void)
     TRACE( "errno = %d\n", errno );
     switch (err)
     {
+    case 0:         return STATUS_SUCCESS;
     case EAGAIN:    return STATUS_SHARING_VIOLATION;
     case EBADF:     return STATUS_INVALID_HANDLE;
     case EBUSY:     return STATUS_DEVICE_BUSY;
@@ -347,6 +348,12 @@ NTSTATUS FILE_GetNtStatus(void)
     case ECONNRESET:return STATUS_PIPE_DISCONNECTED;
     case EFAULT:    return STATUS_ACCESS_VIOLATION;
     case ESPIPE:    return STATUS_ILLEGAL_FUNCTION;
+    case ENOMEM:    return STATUS_NO_MEMORY;
+    case ETIME:     return STATUS_IO_TIMEOUT;
+    case ENODEV:    return STATUS_NO_SUCH_DEVICE;
+    case ENAMETOOLONG: return STATUS_NAME_TOO_LONG;
+    case ENOSYS:    return STATUS_NOT_IMPLEMENTED;
+    case ELOOP:     return STATUS_TOO_MANY_LINKS;
     case ENOEXEC:   /* ?? */
     case EEXIST:    /* ?? */
     default:
-- 

Best Regards, André Hentschel



More information about the wine-patches mailing list