From b3b1a1ecb79fb5b9664891c30d7ebd649fe5adb5 Mon Sep 17 00:00:00 2001 From: Ryan Summers Date: Mon, 13 Dec 2021 09:26:59 +0100 Subject: [PATCH] Handling WOuldBlock errors on network send --- src/network_manager.rs | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/network_manager.rs b/src/network_manager.rs index 0ee242b..68db35f 100644 --- a/src/network_manager.rs +++ b/src/network_manager.rs @@ -98,9 +98,9 @@ where let socket = self.socket.as_mut().ok_or(Error::NotReady)?; self.network_stack .send(socket, &data) - .map_err(|err| match err { - nb::Error::WouldBlock => Error::WriteFail, - nb::Error::Other(err) => Error::Network(err), + .or_else(|err| match err { + nb::Error::WouldBlock => Ok(0), + nb::Error::Other(err) => Err(Error::Network(err)), }) .and_then(|written| { if written != data.len() {