dfu: cmd: free memory allocated by strdup()
authorPrzemyslaw Marczak <p.marczak@samsung.com>
Fri, 28 Nov 2014 12:56:20 +0000 (13:56 +0100)
committerChanho Park <chanho61.park@samsung.com>
Wed, 10 Dec 2014 09:02:32 +0000 (18:02 +0900)
Change-Id: I69f49736af033314f9f4681eeb97fb11a0499b8b
Signed-off-by: Przemyslaw Marczak <p.marczak@samsung.com>
common/cmd_dfu.c

index b102b7d..40c3ccd 100644 (file)
@@ -32,7 +32,8 @@ static int do_dfu(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
 
                if (!usb_controller || !interface || !devstring) {
                        puts("DFU: default device environment is not set.\n");
-                       return CMD_RET_USAGE;
+                       ret = CMD_RET_USAGE;
+                       goto bad_args;
                }
                break;
        case 5:
@@ -94,6 +95,10 @@ done:
                run_command("reset", 0);
 
        dfu_clear_detach();
+bad_args:
+       free(usb_controller);
+       free(interface);
+       free(devstring);
 
        return ret;
 }