about summary refs log tree commit diff
path: root/library/std/src/sys/pal/windows
diff options
context:
space:
mode:
authorbors <bors@rust-lang.org>2024-02-17 00:23:15 +0000
committerbors <bors@rust-lang.org>2024-02-17 00:23:15 +0000
commit405b22f1a3a39eef5f4698b3662097c8a4f6f5d0 (patch)
tree392d21332697dbf673926d68eb49ae13c3b94d0d /library/std/src/sys/pal/windows
parentbccb9bbb418a30aeb332052e721beb6ebc6b1ce7 (diff)
parent0a42a540c603846aa22f29f378a61a64c9d4383e (diff)
downloadrust-405b22f1a3a39eef5f4698b3662097c8a4f6f5d0.tar.gz
rust-405b22f1a3a39eef5f4698b3662097c8a4f6f5d0.zip
Auto merge of #120741 - a1phyr:safe_buffer_advance, r=m-ou-se
Make `io::BorrowedCursor::advance` safe

This also keeps the old `advance` method under `advance_unchecked` name.

This makes pattern like `std::io::default_read_buf` safe to write.
Diffstat (limited to 'library/std/src/sys/pal/windows')
-rw-r--r--library/std/src/sys/pal/windows/handle.rs2
-rw-r--r--library/std/src/sys/pal/windows/net.rs2
-rw-r--r--library/std/src/sys/pal/windows/pipe.rs2
3 files changed, 3 insertions, 3 deletions
diff --git a/library/std/src/sys/pal/windows/handle.rs b/library/std/src/sys/pal/windows/handle.rs
index c4495f81a5a..3f85bb0a099 100644
--- a/library/std/src/sys/pal/windows/handle.rs
+++ b/library/std/src/sys/pal/windows/handle.rs
@@ -121,7 +121,7 @@ impl Handle {
             Ok(read) => {
                 // Safety: `read` bytes were written to the initialized portion of the buffer
                 unsafe {
-                    cursor.advance(read);
+                    cursor.advance_unchecked(read);
                 }
                 Ok(())
             }
diff --git a/library/std/src/sys/pal/windows/net.rs b/library/std/src/sys/pal/windows/net.rs
index c34e01e000a..e37fbe9ef83 100644
--- a/library/std/src/sys/pal/windows/net.rs
+++ b/library/std/src/sys/pal/windows/net.rs
@@ -234,7 +234,7 @@ impl Socket {
                 }
             }
             _ => {
-                unsafe { buf.advance(result as usize) };
+                unsafe { buf.advance_unchecked(result as usize) };
                 Ok(())
             }
         }
diff --git a/library/std/src/sys/pal/windows/pipe.rs b/library/std/src/sys/pal/windows/pipe.rs
index 7624e746f5c..fd10df82d8b 100644
--- a/library/std/src/sys/pal/windows/pipe.rs
+++ b/library/std/src/sys/pal/windows/pipe.rs
@@ -273,7 +273,7 @@ impl AnonPipe {
             Err(e) => Err(e),
             Ok(n) => {
                 unsafe {
-                    buf.advance(n);
+                    buf.advance_unchecked(n);
                 }
                 Ok(())
             }