about summary refs log tree commit diff
path: root/src/libstd/io/mod.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstd/io/mod.rs')
-rw-r--r--src/libstd/io/mod.rs5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/libstd/io/mod.rs b/src/libstd/io/mod.rs
index 94d60cb3ce7..c72cc0ded9b 100644
--- a/src/libstd/io/mod.rs
+++ b/src/libstd/io/mod.rs
@@ -313,7 +313,8 @@ impl IoError {
                 libc::ERROR_INVALID_NAME => (InvalidInput, "invalid file name"),
                 libc::WSAECONNREFUSED => (ConnectionRefused, "connection refused"),
                 libc::WSAECONNRESET => (ConnectionReset, "connection reset"),
-                libc::WSAEACCES => (PermissionDenied, "permission denied"),
+                libc::ERROR_ACCESS_DENIED | libc::WSAEACCES =>
+                    (PermissionDenied, "permission denied"),
                 libc::WSAEWOULDBLOCK => {
                     (ResourceUnavailable, "resource temporarily unavailable")
                 }
@@ -327,7 +328,7 @@ impl IoError {
                 libc::WSAEINVAL => (InvalidInput, "invalid argument"),
                 libc::ERROR_CALL_NOT_IMPLEMENTED =>
                     (IoUnavailable, "function not implemented"),
-                libc::ERROR_CALL_NOT_IMPLEMENTED =>
+                libc::ERROR_INVALID_HANDLE =>
                     (MismatchedFileTypeForOperation,
                      "invalid handle provided to function"),
                 libc::ERROR_NOTHING_TO_TERMINATE =>