diff --git a/Cargo.lock b/Cargo.lock
index 1666900bb826332bd5ebd567ff865145d06805bd..a2ab06234b5f1a37b81831026c2ee688f490b686 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -3025,12 +3025,6 @@ dependencies = [
  "bitflags",
 ]
 
-[[package]]
-name = "redox_syscall"
-version = "0.1.57"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "41cc0f7e4d5d4544e8861606a285bb08d3e70712ccc7d2b84d7c0ccfaf4b05ce"
-
 [[package]]
 name = "redox_users"
 version = "0.4.0"
diff --git a/library/std/src/path.rs b/library/std/src/path.rs
index 48fdb5bb1e339227dd567702325fe8546eff35e4..b87908c63c7b0a02828f9a9db0079e175bfaf655 100644
--- a/library/std/src/path.rs
+++ b/library/std/src/path.rs
@@ -200,6 +200,7 @@ fn os_str_len(s: &OsStr) -> usize {
             UNC(x, y) => 2 + os_str_len(x) + if os_str_len(y) > 0 { 1 + os_str_len(y) } else { 0 },
             DeviceNS(x) => 4 + os_str_len(x),
             Disk(_) => 2,
+            Scheme(x) => os_str_len(x) + 1,
         }
     }