about summary refs log tree commit diff
path: root/src/libstd/net/parser.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/libstd/net/parser.rs')
-rw-r--r--src/libstd/net/parser.rs2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/libstd/net/parser.rs b/src/libstd/net/parser.rs
index 79a269ff87c..91401c8e4fd 100644
--- a/src/libstd/net/parser.rs
+++ b/src/libstd/net/parser.rs
@@ -193,7 +193,7 @@ impl<'a> Parser<'a> {
         fn ipv6_addr_from_head_tail(head: &[u16], tail: &[u16]) -> Ipv6Addr {
             assert!(head.len() + tail.len() <= 8);
             let mut gs = [0; 8];
-            gs.clone_from_slice(head);
+            gs[..head.len()].clone_from_slice(head);
             gs[(8 - tail.len()) .. 8].clone_from_slice(tail);
             Ipv6Addr::new(gs[0], gs[1], gs[2], gs[3], gs[4], gs[5], gs[6], gs[7])
         }