summaryrefslogtreecommitdiff
path: root/tools/mkimage.c
diff options
context:
space:
mode:
authorMarek Vasut <marex@denx.de>2015-12-07 18:01:54 +0100
committerTom Rini <trini@konsulko.com>2015-12-07 13:28:09 -0500
commit34633141259e6af20959e087b1c244c3285a306b (patch)
tree704971c26999b42a27d748d8ec664099729cc012 /tools/mkimage.c
parentcbb2df2018ab07cb8887715d30d445584e108366 (diff)
downloadu-boot-imx-34633141259e6af20959e087b1c244c3285a306b.zip
u-boot-imx-34633141259e6af20959e087b1c244c3285a306b.tar.gz
u-boot-imx-34633141259e6af20959e087b1c244c3285a306b.tar.bz2
mkimage: Fix warning from fix for generating multi and script images again
Seems 6ae6e160 broke creating images in certain cases, there are two problems with that patch. First is that the expression "!x == 4 || !x == 6" is ambiguous. The intention here was "!(x == 4) || !(x == 6)" based on reading further in the file, where this was borrowed from. This however is interpreted by gcc as "(!x) == 4 || (!x) == 6" and always false. gcc-5.x will warn about this case. The second problem is that we do not want to test for the case of "(NOT x is 4) OR (NOT x is 6)" but instead "(x is not equal to 4) AND (x is not equal to 6)". This is because in those two cases we already execute the code question in another part of the file. Rewrite the expression and add parenthesis for clarity. Signed-off-by: Marek Vasut <marex@denx.de> Cc: Tom Rini <trini@konsulko.com> Cc: Philippe De Swert <philippedeswert@gmail.com> Cc: Simon Glass <sjg@chromium.org> [trini: Re-word Marek's explanation]
Diffstat (limited to 'tools/mkimage.c')
-rw-r--r--tools/mkimage.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/tools/mkimage.c b/tools/mkimage.c
index ae01cb1..8f8b6df 100644
--- a/tools/mkimage.c
+++ b/tools/mkimage.c
@@ -311,8 +311,7 @@ NXTARG: ;
exit (retval);
}
- if (!params.type == IH_TYPE_MULTI ||
- !params.type == IH_TYPE_SCRIPT) {
+ if ((params.type != IH_TYPE_MULTI) && (params.type != IH_TYPE_SCRIPT)) {
dfd = open(params.datafile, O_RDONLY | O_BINARY);
if (dfd < 0) {
fprintf(stderr, "%s: Can't open %s: %s\n",