diff options
Diffstat (limited to 'src/VBox/Runtime/nt')
-rw-r--r-- | src/VBox/Runtime/nt/NtProcessStartup-stub.cpp | 2 | ||||
-rw-r--r-- | src/VBox/Runtime/nt/RTErrConvertFromNtStatus.cpp | 31 |
2 files changed, 23 insertions, 10 deletions
diff --git a/src/VBox/Runtime/nt/NtProcessStartup-stub.cpp b/src/VBox/Runtime/nt/NtProcessStartup-stub.cpp index fcb3bc21..5da37811 100644 --- a/src/VBox/Runtime/nt/NtProcessStartup-stub.cpp +++ b/src/VBox/Runtime/nt/NtProcessStartup-stub.cpp @@ -4,7 +4,7 @@ */ /* - * Copyright (C) 2009 Oracle Corporation + * Copyright (C) 2009-2010 Oracle Corporation * * This file is part of VirtualBox Open Source Edition (OSE), as * available from http://www.virtualbox.org. This file is free software; diff --git a/src/VBox/Runtime/nt/RTErrConvertFromNtStatus.cpp b/src/VBox/Runtime/nt/RTErrConvertFromNtStatus.cpp index 0f74823b..a102b0a1 100644 --- a/src/VBox/Runtime/nt/RTErrConvertFromNtStatus.cpp +++ b/src/VBox/Runtime/nt/RTErrConvertFromNtStatus.cpp @@ -4,7 +4,7 @@ */ /* - * Copyright (C) 2006-2007 Oracle Corporation + * Copyright (C) 2006-2013 Oracle Corporation * * This file is part of VirtualBox Open Source Edition (OSE), as * available from http://www.virtualbox.org. This file is free software; @@ -40,17 +40,30 @@ RTDECL(int) RTErrConvertFromNtStatus(long lNativeCode) { switch (lNativeCode) { - case STATUS_SUCCESS: - return VINF_SUCCESS; - case STATUS_ALERTED: - case STATUS_USER_APC: - return VERR_INTERRUPTED; - case STATUS_OBJECT_NAME_NOT_FOUND: - return VERR_FILE_NOT_FOUND; + case STATUS_SUCCESS: return VINF_SUCCESS; + + case STATUS_ALERTED: return VERR_INTERRUPTED; + case STATUS_USER_APC: return VERR_INTERRUPTED; + + case STATUS_DATATYPE_MISALIGNMENT: return VERR_INVALID_POINTER; + case STATUS_NO_MORE_FILES: return VERR_NO_MORE_FILES; + case STATUS_NO_MORE_ENTRIES: return VERR_NO_MORE_FILES; + + case STATUS_INVALID_HANDLE: return VERR_INVALID_HANDLE; + case STATUS_INVALID_PARAMETER: return VERR_INVALID_PARAMETER; + case STATUS_INVALID_DEVICE_REQUEST: return VERR_IO_BAD_COMMAND; + case STATUS_ACCESS_DENIED: return VERR_ACCESS_DENIED; + case STATUS_OBJECT_TYPE_MISMATCH: return VERR_UNEXPECTED_FS_OBJ_TYPE; + case STATUS_OBJECT_NAME_INVALID: return VERR_INVALID_NAME; + case STATUS_OBJECT_NAME_NOT_FOUND: return VERR_FILE_NOT_FOUND; + case STATUS_OBJECT_PATH_INVALID: return VERR_INVALID_NAME; + case STATUS_OBJECT_PATH_NOT_FOUND: return VERR_PATH_NOT_FOUND; + case STATUS_BAD_NETWORK_PATH: return VERR_NET_PATH_NOT_FOUND; + case STATUS_NOT_A_DIRECTORY: return VERR_NOT_A_DIRECTORY; } /* unknown error. */ - AssertMsgFailed(("Unhandled error %ld\n", lNativeCode)); + AssertMsgFailed(("Unhandled error %#lx (%lu)\n", lNativeCode, lNativeCode)); return VERR_UNRESOLVED_ERROR; } |