Procházet zdrojové kódy

Changed behavior of phy::RawSocket TxToken::consume to be more similar to RawSocket::receive

Jade před 3 roky
rodič
revize
32974f8136
1 změnil soubory, kde provedl 4 přidání a 6 odebrání
  1. 4 6
      src/phy/raw_socket.rs

+ 4 - 6
src/phy/raw_socket.rs

@@ -111,12 +111,10 @@ impl phy::TxToken for TxToken {
         let mut lower = self.lower.borrow_mut();
         let mut buffer = vec![0; len];
         let result = f(&mut buffer);
-        if let Err(err) = lower.send(&buffer[..]) {
-            return match err.kind() {
-                io::ErrorKind::WouldBlock => Err(crate::Error::Exhausted),
-                _ => Err(crate::Error::Illegal),
-            };
+        match lower.send(&buffer[..]) {
+            Ok(_) => result,
+            Err(err) if err.kind() == io::ErrorKind::WouldBlock => Err(crate::Error::Exhausted),
+            Err(err) => panic!("{}", err),
         }
-        result
     }
 }