[flashrom] [commit] r1228 - trunk
repository service
svn at flashrom.org
Wed Nov 10 04:10:42 CET 2010
Author: hailfinger
Date: Wed Nov 10 04:10:41 2010
New Revision: 1228
URL: http://flashrom.org/trac/flashrom/changeset/1228
Log:
Retry short reads in ft2232_spi.
It is possible that ftdi_read_data() returns less data
than requested. Catch this case and retry reading the rest
of the buffer.
Signed-off-by: Alex Badea <vamposdecampos at gmail.com>
Acked-by: Carl-Daniel Hailfinger <c-d.hailfinger.devel.2006 at gmx.net>
Modified:
trunk/ft2232_spi.c
Modified: trunk/ft2232_spi.c
==============================================================================
--- trunk/ft2232_spi.c Wed Nov 10 00:30:43 2010 (r1227)
+++ trunk/ft2232_spi.c Wed Nov 10 04:10:41 2010 (r1228)
@@ -108,11 +108,16 @@
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;
}
More information about the flashrom
mailing list