wait() does not need the buffer passed explicitly, it's already stored
in t.buf.
This commit is contained in:
@@ -74,7 +74,7 @@ func (e *endpoint) transfer(buf []byte, timeout time.Duration) (int, error) {
|
|||||||
return 0, err
|
return 0, err
|
||||||
}
|
}
|
||||||
|
|
||||||
n, err := t.wait(buf)
|
n, err := t.wait()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
log.Printf("bulk: %s failed: %s", tt, err)
|
log.Printf("bulk: %s failed: %s", tt, err)
|
||||||
return 0, err
|
return 0, err
|
||||||
|
@@ -50,7 +50,7 @@ func (t *usbTransfer) submit(timeout time.Duration) error {
|
|||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (t *usbTransfer) wait(b []byte) (n int, err error) {
|
func (t *usbTransfer) wait() (n int, err error) {
|
||||||
select {
|
select {
|
||||||
case <-time.After(10 * time.Second):
|
case <-time.After(10 * time.Second):
|
||||||
return 0, fmt.Errorf("wait timed out after 10s")
|
return 0, fmt.Errorf("wait timed out after 10s")
|
||||||
@@ -59,9 +59,9 @@ func (t *usbTransfer) wait(b []byte) (n int, err error) {
|
|||||||
var status uint8
|
var status uint8
|
||||||
switch TransferType(t.xfer._type) {
|
switch TransferType(t.xfer._type) {
|
||||||
case TRANSFER_TYPE_ISOCHRONOUS:
|
case TRANSFER_TYPE_ISOCHRONOUS:
|
||||||
n = int(C.extract_iso_data(t.xfer, unsafe.Pointer(&b[0]), C.int(len(b)), (*C.uchar)(unsafe.Pointer(&status))))
|
n = int(C.extract_iso_data(t.xfer, unsafe.Pointer(&t.buf[0]), C.int(len(t.buf)), (*C.uchar)(unsafe.Pointer(&status))))
|
||||||
default:
|
default:
|
||||||
n = int(C.extract_data(t.xfer, unsafe.Pointer(&b[0]), C.int(len(b)), (*C.uchar)(unsafe.Pointer(&status))))
|
n = int(C.extract_data(t.xfer, unsafe.Pointer(&t.buf[0]), C.int(len(t.buf)), (*C.uchar)(unsafe.Pointer(&status))))
|
||||||
}
|
}
|
||||||
if status != 0 {
|
if status != 0 {
|
||||||
err = TransferStatus(status)
|
err = TransferStatus(status)
|
||||||
|
Reference in New Issue
Block a user