diff --git a/src/lib.rs b/src/lib.rs index 344f601..c2e0945 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -146,9 +146,11 @@ impl UsbBus for UsbDevice { } fn is_stalled(&self, ep_addr: EndpointAddress) -> bool { - free(|cs| match self.select_endpoint(cs, ep_addr.index()) { - Ok(_) => self.usb.borrow(cs).ueconx.read().stallrq().bit_is_set(), - Err(_) => false, + free(|cs| { + if self.select_endpoint(cs, ep_addr.index()).is_ok() { + return self.usb.borrow(cs).ueconx.read().stallrq().bit_is_set(); + } + false }) } @@ -223,8 +225,8 @@ impl UsbBus for UsbDevice { free(|cs| { let usb = self.usb.borrow(cs); - if let Err(error) = self.select_endpoint(cs, ep_addr.index()) { - Err(error) + if let Err(usb_error) = self.select_endpoint(cs, ep_addr.index()) { + Err(usb_error) } else { let ep = &self.ep_table[ep_addr.index()]; @@ -261,11 +263,11 @@ impl UsbBus for UsbDevice { .write(|w| w.clear_interrupts().rxouti().clear_bit()); let mut bytes_read = 0; - for slot in buf { + for data in buf { if usb.ueintx.read().rwal().bit_is_clear() { break; } - *slot = usb.uedatx.read().bits(); + *data = usb.uedatx.read().bits(); bytes_read += 1; }