Message ID | 1310667306-24948-1-git-send-email-vapier@gentoo.org |
---|---|
State | Accepted |
Commit | 975afc34dd3ca51ef3f3e7c0c0dcece89dda10ae |
Delegated to: | Wolfgang Denk |
Headers | show |
Thanks Mike for this... I was making changes and wasn't sure why I added a call to remember the post results for event the manual tests; so, I could do a report for production purposes ... anyway my code was always marking the tests as passed even if they failed which is how I caught this. James Kosin On 7/14/2011 2:15 PM, Mike Frysinger wrote: > From: James Kosin <jkosin@intcomgrp.com> > > The post.c code is missing braces around the pass case, and as a > result, the diagnostic function will post both fail and pass for > a failed test. The reason for this bug is probably the incorrect > indentation used, so when reading the code it seems like there > are proper braces. > > Indent the code to the correct depth and put proper braces around > the "else" branch of the "if" statement. > > Signed-off-by: James Kosin <jkosin@intcomgrp.com> > Signed-off-by: Mike Frysinger <vapier@gentoo.org> > --- > post/post.c | 24 ++++++++++++------------ > 1 files changed, 12 insertions(+), 12 deletions(-) > > diff --git a/post/post.c b/post/post.c > index 7660224..852d6a5 100644 > --- a/post/post.c > +++ b/post/post.c > @@ -293,18 +293,18 @@ static int post_run_single (struct post_test *test, > gd->flags |= GD_FLG_POSTSTOP; > } > } else { > - if ((*test->test) (flags) != 0) { > - post_log ("FAILED\n"); > - show_boot_progress (-32); > - show_post_progress(i, POST_AFTER, POST_FAILED); > - if (test_flags & POST_CRITICAL) > - gd->flags |= GD_FLG_POSTFAIL; > - if (test_flags & POST_STOP) > - gd->flags |= GD_FLG_POSTSTOP; > - } > - else > - post_log ("PASSED\n"); > - show_post_progress(i, POST_AFTER, POST_PASSED); > + if ((*test->test)(flags) != 0) { > + post_log("FAILED\n"); > + show_boot_progress(-32); > + show_post_progress(i, POST_AFTER, POST_FAILED); > + if (test_flags & POST_CRITICAL) > + gd->flags |= GD_FLG_POSTFAIL; > + if (test_flags & POST_STOP) > + gd->flags |= GD_FLG_POSTSTOP; > + } else { > + post_log("PASSED\n"); > + show_post_progress(i, POST_AFTER, POST_PASSED); > + } > } > > if ((test_flags & POST_REBOOT) && !(flags & POST_MANUAL)) {
Dear Mike Frysinger, In message <1310667306-24948-1-git-send-email-vapier@gentoo.org> you wrote: > From: James Kosin <jkosin@intcomgrp.com> > > The post.c code is missing braces around the pass case, and as a > result, the diagnostic function will post both fail and pass for > a failed test. The reason for this bug is probably the incorrect > indentation used, so when reading the code it seems like there > are proper braces. > > Indent the code to the correct depth and put proper braces around > the "else" branch of the "if" statement. > > Signed-off-by: James Kosin <jkosin@intcomgrp.com> > Signed-off-by: Mike Frysinger <vapier@gentoo.org> > --- > post/post.c | 24 ++++++++++++------------ > 1 files changed, 12 insertions(+), 12 deletions(-) Applied, thanks. Best regards, Wolfgang Denk
diff --git a/post/post.c b/post/post.c index 7660224..852d6a5 100644 --- a/post/post.c +++ b/post/post.c @@ -293,18 +293,18 @@ static int post_run_single (struct post_test *test, gd->flags |= GD_FLG_POSTSTOP; } } else { - if ((*test->test) (flags) != 0) { - post_log ("FAILED\n"); - show_boot_progress (-32); - show_post_progress(i, POST_AFTER, POST_FAILED); - if (test_flags & POST_CRITICAL) - gd->flags |= GD_FLG_POSTFAIL; - if (test_flags & POST_STOP) - gd->flags |= GD_FLG_POSTSTOP; - } - else - post_log ("PASSED\n"); - show_post_progress(i, POST_AFTER, POST_PASSED); + if ((*test->test)(flags) != 0) { + post_log("FAILED\n"); + show_boot_progress(-32); + show_post_progress(i, POST_AFTER, POST_FAILED); + if (test_flags & POST_CRITICAL) + gd->flags |= GD_FLG_POSTFAIL; + if (test_flags & POST_STOP) + gd->flags |= GD_FLG_POSTSTOP; + } else { + post_log("PASSED\n"); + show_post_progress(i, POST_AFTER, POST_PASSED); + } } if ((test_flags & POST_REBOOT) && !(flags & POST_MANUAL)) {