diff options
| -rw-r--r-- | daemon/device.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/daemon/device.c b/daemon/device.c index 0a143b2..8c786a7 100644 --- a/daemon/device.c +++ b/daemon/device.c | |||
| @@ -576,7 +576,7 @@ void device_data_input(struct usb_device *usbdev, unsigned char *buffer, uint32_ | |||
| 576 | } | 576 | } |
| 577 | memcpy(dev->pktbuf + dev->pktlen, buffer, length); | 577 | memcpy(dev->pktbuf + dev->pktlen, buffer, length); |
| 578 | struct mux_header *mhdr = (struct mux_header *)dev->pktbuf; | 578 | struct mux_header *mhdr = (struct mux_header *)dev->pktbuf; |
| 579 | if((length < USB_MRU) || (ntohl(mhdr->length) == length)) { | 579 | if((length < USB_MRU) || (ntohl(mhdr->length) == (length + dev->pktlen))) { |
| 580 | buffer = dev->pktbuf; | 580 | buffer = dev->pktbuf; |
| 581 | length += dev->pktlen; | 581 | length += dev->pktlen; |
| 582 | dev->pktlen = 0; | 582 | dev->pktlen = 0; |
