r2770 - trunk/src/host/dfu-util/src

laforge at sita.openmoko.org laforge at sita.openmoko.org
Tue Aug 21 21:20:48 CEST 2007


Author: laforge
Date: 2007-08-21 21:20:40 +0200 (Tue, 21 Aug 2007)
New Revision: 2770

Modified:
   trunk/src/host/dfu-util/src/main.c
Log:
fix endian bug while using transfer size (from http://svn.nslu2-linux.org/svnroot/optware/trunk/sources/dfu-util/fix-endianess.patch)


Modified: trunk/src/host/dfu-util/src/main.c
===================================================================
--- trunk/src/host/dfu-util/src/main.c	2007-08-21 19:17:35 UTC (rev 2769)
+++ trunk/src/host/dfu-util/src/main.c	2007-08-21 19:20:40 UTC (rev 2770)
@@ -26,6 +26,8 @@
 #include <getopt.h>
 #include <usb.h>
 #include <errno.h>
+#include <byteswap.h>
+#include <endian.h>
 
 #include "dfu.h"
 #include "usb_dfu.h"
@@ -648,8 +650,10 @@
 				"descriptor: %s\n", usb_strerror());
 			transfer_size = page_size;
 		} else {
-		    /* FIXME: Endian! */
-		    transfer_size = func_dfu.wTransferSize;
+#if __BYTE_ORDER == __BIG_ENDIAN
+			func_dfu.wTransferSize = bswap_16(func_dfu.wTransferSize);
+#endif
+			transfer_size = func_dfu.wTransferSize;
 		}
 	}
 





More information about the commitlog mailing list