From: Thierry Reding <tred...@nvidia.com>

GCC 5.1 starts warning for comparisons such as !a > 0, assuming that the
negation was meant to apply to the whole expression rather than just the
left operand.

Indeed the comparison in the FIT loadable code is confusingly written,
though it does end up doing the right thing. Rewrite the condition to be
more explicit, that is, iterate over strings until they're exhausted.

Signed-off-by: Thierry Reding <tred...@nvidia.com>
---
 common/image.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/common/image.c b/common/image.c
index 998a4b6fcdfb..5e6f4af5d9cf 100644
--- a/common/image.c
+++ b/common/image.c
@@ -1228,10 +1228,10 @@ int boot_get_loadable(int argc, char * const argv[], 
bootm_headers_t *images,
                conf_noffset = fit_conf_get_node(buf, images->fit_uname_cfg);
 
                for (loadables_index = 0;
-                    !fdt_get_string_index(buf, conf_noffset,
+                    fdt_get_string_index(buf, conf_noffset,
                                FIT_LOADABLE_PROP,
                                loadables_index,
-                               (const char **)&uname) > 0;
+                               (const char **)&uname) == 0;
                     loadables_index++)
                {
                        fit_img_result = fit_image_load(images,
-- 
2.4.5

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to