Slight simplification by using .enumerate()
This commit is contained in:
parent
e695897fe8
commit
691252e72c
|
@ -575,17 +575,15 @@ impl SchemeMut for Tcpd {
|
||||||
if ! handle.is_connected() {
|
if ! handle.is_connected() {
|
||||||
return Err(Error::new(ENOTCONN));
|
return Err(Error::new(ENOTCONN));
|
||||||
} else if let Some((ip, mut tcp)) = handle.data.pop_front() {
|
} else if let Some((ip, mut tcp)) = handle.data.pop_front() {
|
||||||
let mut i = 0;
|
let len = std::cmp::min(buf.len(), tcp.data.len());
|
||||||
let mut len = std::cmp::min(buf.len(), tcp.data.len());
|
for (i, c) in tcp.data.drain(0..len).enumerate() {
|
||||||
for c in tcp.data.drain(0..len) {
|
|
||||||
buf[i] = c;
|
buf[i] = c;
|
||||||
i += 1;
|
|
||||||
}
|
}
|
||||||
if !tcp.data.is_empty() {
|
if !tcp.data.is_empty() {
|
||||||
handle.data.push_front((ip, tcp));
|
handle.data.push_front((ip, tcp));
|
||||||
}
|
}
|
||||||
|
|
||||||
return Ok(i);
|
return Ok(len);
|
||||||
} else if handle.flags & O_NONBLOCK == O_NONBLOCK || handle.read_closed() {
|
} else if handle.flags & O_NONBLOCK == O_NONBLOCK || handle.read_closed() {
|
||||||
return Ok(0);
|
return Ok(0);
|
||||||
} else {
|
} else {
|
||||||
|
|
Loading…
Reference in a new issue