From: Tormod Volden <[email protected]>

If the completion packet is not received properly it is not
sure anything will be written.

Return the total number of bytes written.

Remove a stray perror.

Remove a trailing newline.
---

Hi,
More patches for dfu-util. I hope they do not drown in Russion spam :)

Tormod

 src/sam7dfu.c |   10 +++++-----
 1 files changed, 5 insertions(+), 5 deletions(-)

diff --git a/src/sam7dfu.c b/src/sam7dfu.c
index d839952..177ba7b 100644
--- a/src/sam7dfu.c
+++ b/src/sam7dfu.c
@@ -104,7 +104,6 @@ int sam7dfu_do_dnload(struct usb_dev_handle *usb_handle, 
int interface,
        if (ret < 0) {
                perror(fname);
                goto out_close;
-               perror(fname);
        }
 
        if (st.st_size <= 0 /* + DFU_HDR */) {
@@ -164,8 +163,10 @@ int sam7dfu_do_dnload(struct usb_dev_handle *usb_handle, 
int interface,
 
        /* send one zero sized download request to signalize end */
        ret = dfu_download(usb_handle, interface, 0, NULL);
-       if (ret >= 0)
-               ret = bytes_sent;
+       if (ret < 0) {
+                       fprintf(stderr, "Error sending completion packet\n");
+                       goto out_close;
+       }
 
        printf("] finished!\n");
        fflush(stdout);
@@ -206,7 +207,7 @@ out_close:
 out_free:
        free(buf);
 
-       return ret;
+       return bytes_sent;
 }
 
 void sam7dfu_init()
@@ -215,4 +216,3 @@ void sam7dfu_init()
     dfu_init( 5000 );
 }
 
-
-- 
1.7.0.4


_______________________________________________
devel mailing list
[email protected]
https://lists.openmoko.org/mailman/listinfo/devel

Reply via email to