Re: [PATCH] Rewrite git-compat-util.h:skip_prefix() as a loop
- From
Jeff King <peff@peff.net>
- Date
- Feb 28, 2014, 06:17 UTC
- Message-ID
- <20140228061725.GD32556@sigill.intra.peff.net>
- In-Reply-To
- <87k3cg47o6.fsf@fencepost.gnu.org>
On Thu, Feb 27, 2014 at 09:33:45PM +0100, David Kastrup wrote:
Show 18 quoted lines
> >> diff --git a/git-compat-util.h b/git-compat-util.h
> >> index cbd86c3..4daa6cf 100644
> >> --- a/git-compat-util.h
> >> +++ b/git-compat-util.h
> >> @@ -357,8 +357,8 @@ extern int suffixcmp(const char *str, const char *suffix);
> >>
> >> static inline const char *skip_prefix(const char *str, const char *prefix)
> >> {
> >> - size_t len = strlen(prefix);
> >> - return strncmp(str, prefix, len) ? NULL : str + len;
> >> + while( *prefix != '\0' && *str++ == *prefix++ );
> >> + return *prefix == '\0' ? str : NULL;
> >
> > Documentation/CodingGuidelines?
>
> Mostly relevant for tabification here, not helping much otherwise. In
> particular, does not contain the advice "empty statements should appear
> on a line of their own" which would help with readability here.Also whitespace in the "while", which I could not find mentioned in CodingGuidelines either. Maybe:
-- >8 -- Subject: [PATCH] CodingGuidelines: mention C whitespace rules
We are fairly consistent about these, so most are covered by "follow existing style", but it doesn't hurt to be explicit.
Signed-off-by: Jeff King <peff@peff.net> --- Documentation/CodingGuidelines | 11 +++++++++++ 1 file changed, 11 insertions(+)
diff --git a/Documentation/CodingGuidelines b/Documentation/CodingGuidelines index ef67b53..ed432a8 100644 --- a/Documentation/CodingGuidelines +++ b/Documentation/CodingGuidelines @@ -126,6 +126,17 @@ For C programs: "char * string". This makes it easier to understand code like "char *string, c;". + - Use whitespace around operators and keywords, but not inside + parentheses and not around functions. So: + + while (condition) + func(bar + 1); + + and not: + + while( condition ) + func (bar+1); + - We avoid using braces unnecessarily. I.e. if (bla) {
-- 1.8.5.2.500.g8060133