diff options
author | Sanchayan Maity <maitysanchayan@gmail.com> | 2016-08-08 16:56:17 +0530 |
---|---|---|
committer | Marek Vasut <marex@denx.de> | 2016-09-27 23:30:22 +0200 |
commit | 54a708ca06830c3fe3df8c0001ab33df784701f9 (patch) | |
tree | 86d6d1d1660ae6851260fc4c25437ec66b95017e /common | |
parent | cdb1808aefbc7173d687cb03de15b8ee3a671743 (diff) | |
download | u-boot-54a708ca06830c3fe3df8c0001ab33df784701f9.zip u-boot-54a708ca06830c3fe3df8c0001ab33df784701f9.tar.gz u-boot-54a708ca06830c3fe3df8c0001ab33df784701f9.tar.bz2 |
cmd: dfu: Add error handling for failed registration
Without this, if g_dnl_register() fails, DFU code continues on
blindly and crashes. This fix makes it simply print an error
message instead.
Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
[l.majewski@samsung.com - some manual tweaks needed]
Diffstat (limited to 'common')
-rw-r--r-- | common/dfu.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/common/dfu.c b/common/dfu.c index 14b60f1..4c529f7 100644 --- a/common/dfu.c +++ b/common/dfu.c @@ -26,7 +26,12 @@ int run_usb_dnl_gadget(int usbctrl_index, char *usb_dnl_gadget) board_usb_init(usbctrl_index, USB_INIT_DEVICE); g_dnl_clear_detach(); - g_dnl_register(usb_dnl_gadget); + ret = g_dnl_register(usb_dnl_gadget); + if (ret) { + error("g_dnl_register failed"); + return CMD_RET_FAILURE; + } + while (1) { if (g_dnl_detach()) { /* |