summaryrefslogtreecommitdiffstats
path: root/ft2232_spi.c
diff options
context:
space:
mode:
Diffstat (limited to 'ft2232_spi.c')
-rw-r--r--ft2232_spi.c15
1 files changed, 10 insertions, 5 deletions
diff --git a/ft2232_spi.c b/ft2232_spi.c
index a2ea2a8..7c2d9b5 100644
--- a/ft2232_spi.c
+++ b/ft2232_spi.c
@@ -108,11 +108,16 @@ static int get_buf(struct ftdi_context *ftdic, const unsigned char *buf,
int size)
{
int r;
- r = ftdi_read_data(ftdic, (unsigned char *) buf, size);
- if (r < 0) {
- msg_perr("ftdi_read_data: %d, %s\n", r,
- ftdi_get_error_string(ftdic));
- return 1;
+
+ while (size > 0) {
+ r = ftdi_read_data(ftdic, (unsigned char *) buf, size);
+ if (r < 0) {
+ msg_perr("ftdi_read_data: %d, %s\n", r,
+ ftdi_get_error_string(ftdic));
+ return 1;
+ }
+ buf += r;
+ size -= r;
}
return 0;
}
OpenPOWER on IntegriCloud