From: Thomas Jarosch Date: Thu, 25 Mar 2004 21:44:30 +0000 (+0000) Subject: libftdi: (tomj) fixed readbuffer offset sizes, fixed read return code X-Git-Tag: v0.3^0 X-Git-Url: http://developer.intra2net.com/git/?p=libftdi;a=commitdiff_plain;h=4ece2c24d8ffb3ce77ae94effa657e49c1f536c2 libftdi: (tomj) fixed readbuffer offset sizes, fixed read return code --- diff --git a/ftdi/ftdi.c b/ftdi/ftdi.c index 0c2314a..84f768a 100644 --- a/ftdi/ftdi.c +++ b/ftdi/ftdi.c @@ -276,10 +276,8 @@ int ftdi_read_data(struct ftdi_context *ftdi, unsigned char *buf, int size) { // printf("Got bytes from buffer: %d\n", ftdi->readbuffer_remaining); - // Fix offsets + // Fix offset offset += ftdi->readbuffer_remaining; - ftdi->readbuffer_remaining = 0; - ftdi->readbuffer_offset = 0; } // do the actual USB read @@ -318,10 +316,11 @@ int ftdi_read_data(struct ftdi_context *ftdi, unsigned char *buf, int size) { ftdi->readbuffer_offset += part_size; ftdi->readbuffer_remaining = ret-part_size; + offset += part_size; // printf("Returning part: %d - size: %d - offset: %d - ret: %d - remaining: %d\n", part_size, size, offset, ret, ftdi->readbuffer_remaining); - return part_size; + return offset; } } } diff --git a/ftdi/ftdi.h b/ftdi/ftdi.h index 28a40bd..ea78d3c 100644 --- a/ftdi/ftdi.h +++ b/ftdi/ftdi.h @@ -28,8 +28,8 @@ struct ftdi_context { int baudrate; unsigned char bitbang_enabled; unsigned char *readbuffer; - unsigned char readbuffer_offset; - unsigned char readbuffer_remaining; + unsigned int readbuffer_offset; + unsigned int readbuffer_remaining; unsigned int readbuffer_chunksize; unsigned int writebuffer_chunksize;