diff --git a/examples/src/bin/tlsclient-mio.rs b/examples/src/bin/tlsclient-mio.rs index 481af79b..265bf6ea 100644 --- a/examples/src/bin/tlsclient-mio.rs +++ b/examples/src/bin/tlsclient-mio.rs @@ -534,7 +534,14 @@ fn main() { tlsclient.register(poll.registry()); loop { - poll.poll(&mut events, None).unwrap(); + match poll.poll(&mut events, None) { + Ok(_) => {} + // Polling can be interrupted (e.g. by a debugger) - retry if so. + Err(e) if e.kind() == io::ErrorKind::Interrupted => continue, + Err(e) => { + panic!("poll failed: {:?}", e) + } + } for ev in events.iter() { tlsclient.ready(ev); diff --git a/examples/src/bin/tlsserver-mio.rs b/examples/src/bin/tlsserver-mio.rs index 6ee3bba4..00dc7e12 100644 --- a/examples/src/bin/tlsserver-mio.rs +++ b/examples/src/bin/tlsserver-mio.rs @@ -702,7 +702,14 @@ fn main() { let mut events = mio::Events::with_capacity(256); loop { - poll.poll(&mut events, None).unwrap(); + match poll.poll(&mut events, None) { + Ok(_) => {} + // Polling can be interrupted (e.g. by a debugger) - retry if so. + Err(e) if e.kind() == io::ErrorKind::Interrupted => continue, + Err(e) => { + panic!("poll failed: {:?}", e) + } + } for event in events.iter() { match event.token() {