fixed some glibusb bugs (possibly mine)
diff --git a/aos/common/glibusb/glibusb.cc b/aos/common/glibusb/glibusb.cc
index 5dd0075..788cca5 100644
--- a/aos/common/glibusb/glibusb.cc
+++ b/aos/common/glibusb/glibusb.cc
@@ -206,7 +206,7 @@
 
 UsbDevice *Libusb::FindSingleMatchingDeviceOrLose(
     const VendorProductId &id) {
-  return CHECK_NOTNULL(FindSingleMatchingDeviceOrLose(id));
+  return CHECK_NOTNULL(FindSingleMatchingDevice(id));
 }
 
 UsbDevice *Libusb::FindSingleMatchingDevice(
diff --git a/aos/common/glibusb/glibusb_transfer.cc b/aos/common/glibusb/glibusb_transfer.cc
index 95a6222..a5b4c39 100644
--- a/aos/common/glibusb/glibusb_transfer.cc
+++ b/aos/common/glibusb/glibusb_transfer.cc
@@ -57,11 +57,13 @@
     case LIBUSB_TRANSFER_TYPE_INTERRUPT:
       libusb_fill_bulk_transfer(transfer, dev_handle, endpoint, buffer, length,
                                 transfer_cb, &completed, timeout);
+      break;
     case LIBUSB_TRANSFER_TYPE_ISOCHRONOUS:
       libusb_fill_iso_transfer(transfer, dev_handle, endpoint, buffer, length,
                                kNumIsoPackets, transfer_cb, &completed,
                                timeout);
       transfer->iso_packet_desc[0].length = length;
+      break;
     default:
       LOG(FATAL, "unhandled transfer type %hhd\n", type);
   }