Skip to content

Commit 1b5ea98

Browse files
io: don't panic when socket address is unavailable
1 parent 7761222 commit 1b5ea98

File tree

1 file changed

+4
-3
lines changed

1 file changed

+4
-3
lines changed

src/io/recv_from.rs

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -65,11 +65,12 @@ where
6565
// Recover the buffer
6666
let mut buf = self.buf;
6767

68-
let socket_addr = (*self.socket_addr).as_socket();
68+
let socket_addr = match (*self.socket_addr).as_socket() {
69+
Some(sa) => sa,
70+
None => return (Err(io::Error::from(io::ErrorKind::AddrNotAvailable)), buf),
71+
};
6972

7073
let res = res.map(|n| {
71-
let socket_addr: SocketAddr = socket_addr.unwrap();
72-
7374
// Safety: the kernel wrote `n` bytes to the buffer.
7475
unsafe {
7576
buf.set_init(n);

0 commit comments

Comments
 (0)