mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-10 23:24:38 +00:00
tools/kwbimage.c: fix parser error handling
The two error checks for image_boot_mode_id and image_nand_ecc_mode_id where wrong and would never fail, fix that! This was detected by Apple's clang compiler: ---8<--- HOSTCC tools/kwbimage.o tools/kwbimage.c:553:20: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare] if (el->bootfrom < 0) { ~~~~~~~~~~~~ ^ ~ tools/kwbimage.c:571:23: warning: comparison of unsigned expression < 0 is always false [-Wtautological-compare] if (el->nandeccmode < 0) { ~~~~~~~~~~~~~~~ ^ ~ 2 warnings generated. --->8--- Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com> Acked-By: Jeroen Hofstee <jeroen@myspectrum.nl>
This commit is contained in:
parent
41e82da12a
commit
f411b8f227
1 changed files with 8 additions and 6 deletions
|
@ -554,13 +554,14 @@ static int image_create_config_parse_oneline(char *line,
|
|||
el->version = atoi(value);
|
||||
} else if (!strcmp(keyword, "BOOT_FROM")) {
|
||||
char *value = strtok_r(NULL, deliminiters, &saveptr);
|
||||
el->type = IMAGE_CFG_BOOT_FROM;
|
||||
el->bootfrom = image_boot_mode_id(value);
|
||||
if (el->bootfrom < 0) {
|
||||
int ret = image_boot_mode_id(value);
|
||||
if (ret < 0) {
|
||||
fprintf(stderr,
|
||||
"Invalid boot media '%s'\n", value);
|
||||
return -1;
|
||||
}
|
||||
el->type = IMAGE_CFG_BOOT_FROM;
|
||||
el->bootfrom = ret;
|
||||
} else if (!strcmp(keyword, "NAND_BLKSZ")) {
|
||||
char *value = strtok_r(NULL, deliminiters, &saveptr);
|
||||
el->type = IMAGE_CFG_NAND_BLKSZ;
|
||||
|
@ -572,13 +573,14 @@ static int image_create_config_parse_oneline(char *line,
|
|||
strtoul(value, NULL, 16);
|
||||
} else if (!strcmp(keyword, "NAND_ECC_MODE")) {
|
||||
char *value = strtok_r(NULL, deliminiters, &saveptr);
|
||||
el->type = IMAGE_CFG_NAND_ECC_MODE;
|
||||
el->nandeccmode = image_nand_ecc_mode_id(value);
|
||||
if (el->nandeccmode < 0) {
|
||||
int ret = image_nand_ecc_mode_id(value);
|
||||
if (ret < 0) {
|
||||
fprintf(stderr,
|
||||
"Invalid NAND ECC mode '%s'\n", value);
|
||||
return -1;
|
||||
}
|
||||
el->type = IMAGE_CFG_NAND_ECC_MODE;
|
||||
el->nandeccmode = ret;
|
||||
} else if (!strcmp(keyword, "NAND_PAGE_SIZE")) {
|
||||
char *value = strtok_r(NULL, deliminiters, &saveptr);
|
||||
el->type = IMAGE_CFG_NAND_PAGESZ;
|
||||
|
|
Loading…
Reference in a new issue