[U-Boot] [PATCH] tools/env: fix redundant env flag comparison

Wolfgang Denk wd at denx.de
Thu Apr 21 00:25:25 CEST 2011


Dear Jon Povey,

In message <1299820256-29757-1-git-send-email-jon.povey at racelogic.co.uk> you wrote:
> This fixes two bugs with comparison of redundant environment flags on
> read.
> 
> flag0 and flag1 in fw_env_open() were declared signed instead of
> unsigned char breaking BOOLEAN mode "== 0xFF" tests and in INCREMENTAL
> mode the wrong environment would be chosen where the flag values are
> 127 and 128 (either way round). With both flags over 128, both signs
> flipped and the logic worked by happy accident.
> 
> Also there was a logic bug in the INCREMENTAL test (after signedness was
> fixed) in the case flag0=0, flag1=255, env 1 would be incorrectly chosen.
> 
> Fix both of these.
> 
> Signed-off-by: Jon Povey <jon.povey at racelogic.co.uk>
> ---
> After my gripe yesterday, something more constructive:
> 
> I confirmed these bugs with a little test program in C, can send that
> if anyone wants it.
> 
> At a glance it looks like the main u-boot env handling does not have
> these bugs.
> 
>  tools/env/fw_env.c |   13 ++++++-------
>  1 files changed, 6 insertions(+), 7 deletions(-)

Applied, thanks.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Repeat after me:
Usenet is not a word processor; it's a medium where aesthetics count.
Mozilla is not a newsreader; it's a web browser.
Windows is not an operating system; it's a GUI on a program loader.
         -- Tom Christiansen in <6bq0g5$lr4$2 at csnews.cs.colorado.edu>


More information about the U-Boot mailing list