summaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--talpid-core/src/split_tunnel/windows/driver.rs8
1 files changed, 7 insertions, 1 deletions
diff --git a/talpid-core/src/split_tunnel/windows/driver.rs b/talpid-core/src/split_tunnel/windows/driver.rs
index 38bb7b8eab..a8d6faddf9 100644
--- a/talpid-core/src/split_tunnel/windows/driver.rs
+++ b/talpid-core/src/split_tunnel/windows/driver.rs
@@ -945,10 +945,16 @@ pub unsafe fn deserialize_buffer<T: Sized>(buffer: &Vec<u8>) -> T {
instance
}
+/// Inserts a string into `buffer` at a given `byte_offset`.
+///
+/// # Panics
+///
+/// This panics if either `byte_offset` or `byte_offset + 2 * string.len() - 1` is
+/// an out of bounds index for `buffer`.
fn write_string_to_buffer(buffer: &mut [MaybeUninit<u8>], byte_offset: usize, string: &[u16]) {
for (i, byte) in string
.iter()
- .flat_map(|word| std::array::IntoIter::new(word.to_ne_bytes()))
+ .flat_map(|word| word.to_ne_bytes().into_iter())
.enumerate()
{
buffer[byte_offset + i] = MaybeUninit::new(byte);