dfu: avoid memory leak

When dfu_fill_entity fail, need to free dfu to avoid memory leak.

Reported by Coverity:
"
Resource leak (RESOURCE_LEAK)
leaked_storage: Variable dfu going out of scope leaks the storage
it points to.
"

Signed-off-by: Peng Fan <van.freenix@gmail.com>
Cc: "Łukasz Majewski" <l.majewski@samsung.com>
Cc: Marek Vasut <marex@denx.de>
This commit is contained in:
Peng Fan 2016-05-03 10:24:52 +08:00 committed by Marek Vasut
parent 2bf352f0c1
commit 5d8fae7916

View file

@ -468,8 +468,10 @@ int dfu_config_entities(char *env, char *interface, char *devstr)
s = strsep(&env, ";");
ret = dfu_fill_entity(&dfu[i], s, alt_num_cnt, interface,
devstr);
if (ret)
if (ret) {
free(dfu);
return -1;
}
list_add_tail(&dfu[i].list, &dfu_list);
alt_num_cnt++;