[dpdk-dev] scripts: fix checkpatch from standard input
Checks
Commit Message
When checking a valid patch from standard input,
the footer lines of the report are not filtered out.
The function check is called outside of any loop,
so the statement continue has no effect and the footer is printed.
Fixes: 8005feef421d ("scripts: add standard input to checkpatch")
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
---
scripts/checkpatches.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
Comments
On Mon, 21 Nov 2016 23:42:41 +0100, Thomas Monjalon
<thomas.monjalon@6wind.com> wrote:
> When checking a valid patch from standard input,
> the footer lines of the report are not filtered out.
>
> The function check is called outside of any loop,
> so the statement continue has no effect and the footer is printed.
>
> Fixes: 8005feef421d ("scripts: add standard input to checkpatch")
>
> Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
The 'continue' statement is not always without effect. On my machine
(but it looks it's not the same everywhere):
- with dash, the 'continue' acts like a return in that case
- with bash, it displays an error:
"continue: only meaningful in a `for', `while', or `until' loop"
- with bash --posix, the 'continue' is ignored...
In my case, checkpatches.sh was displaying "0/1 valid" although there
was no error. This patch solves the issue, thanks.
Acked-by: Olivier Matz <olivier.matz@6wind.com>
2016-11-28 16:21, Olivier Matz:
> On Mon, 21 Nov 2016 23:42:41 +0100, Thomas Monjalon
> <thomas.monjalon@6wind.com> wrote:
> > When checking a valid patch from standard input,
> > the footer lines of the report are not filtered out.
> >
> > The function check is called outside of any loop,
> > so the statement continue has no effect and the footer is printed.
> >
> > Fixes: 8005feef421d ("scripts: add standard input to checkpatch")
> >
> > Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
>
> The 'continue' statement is not always without effect. On my machine
> (but it looks it's not the same everywhere):
> - with dash, the 'continue' acts like a return in that case
> - with bash, it displays an error:
> "continue: only meaningful in a `for', `while', or `until' loop"
> - with bash --posix, the 'continue' is ignored...
>
> In my case, checkpatches.sh was displaying "0/1 valid" although there
> was no error. This patch solves the issue, thanks.
>
>
> Acked-by: Olivier Matz <olivier.matz@6wind.com>
I've amended with your explanations and applied, thanks
@@ -94,7 +94,7 @@ check () { # <patch> <commit> <title>
else
report=$($DPDK_CHECKPATCH_PATH $options - 2>/dev/null)
fi
- [ $? -ne 0 ] || continue
+ [ $? -ne 0 ] || return 0
$verbose || printf '\n### %s\n\n' "$3"
printf '%s\n' "$report" | sed -n '1,/^total:.*lines checked$/p'
status=$(($status + 1))