From: Hermann Kraus Date: Wed, 18 Aug 2010 07:36:29 +0000 (+0200) Subject: Return correct size if there's enough data in the read buffer X-Git-Tag: v0.19~16 X-Git-Url: http://developer.intra2net.com/git/?p=libftdi;a=commitdiff_plain;h=3094872b920e3b469a6f088f17d2ba5fb6f9804a Return correct size if there's enough data in the read buffer From the mailinglist: The current git version of libftdi contains a critical bug in ftdi_read_data. If a read from the device returns more data than requested the function exits with error -127 (documented as "// never reached") instead of a correct return code. --- diff --git a/src/ftdi.c b/src/ftdi.c index bbbeb9a..f64301d 100644 --- a/src/ftdi.c +++ b/src/ftdi.c @@ -1655,6 +1655,7 @@ int ftdi_read_data(struct ftdi_context *ftdi, unsigned char *buf, int size) /* printf("Returning part: %d - size: %d - offset: %d - ret: %d - remaining: %d\n", part_size, size, offset, ret, ftdi->readbuffer_remaining); */ + return offset; } } gettimeofday(&tv_current,NULL);