Skip to content

Commit

Permalink
pretty: use prefixcmp instead of memcmp on NUL-terminated strings
Browse files Browse the repository at this point in the history
This conversion avoids the need for magic string length numbers in the
code.  And unlike memcmp(), prefixcmp() is careful to not run over the
end of a string.

Signed-off-by: Rene Scharfe <rene.scharfe@lsrfire.ath.cx>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
  • Loading branch information
René Scharfe authored and Junio C Hamano committed Jan 14, 2013
1 parent 3082517 commit 8a692d2
Showing 1 changed file with 4 additions and 4 deletions.
8 changes: 4 additions & 4 deletions pretty.c
Original file line number Diff line number Diff line change
Expand Up @@ -966,7 +966,7 @@ static size_t format_commit_one(struct strbuf *sb, const char *placeholder,

if (!end)
return 0;
if (!memcmp(begin, "auto,", 5)) {
if (!prefixcmp(begin, "auto,")) {
if (!want_color(c->pretty_ctx->color))
return end - placeholder + 1;
begin += 5;
Expand Down Expand Up @@ -1310,7 +1310,7 @@ static void pp_header(const struct pretty_print_context *pp,
continue;
}

if (!memcmp(line, "parent ", 7)) {
if (!prefixcmp(line, "parent ")) {
if (linelen != 48)
die("bad parent line in commit");
continue;
Expand All @@ -1334,11 +1334,11 @@ static void pp_header(const struct pretty_print_context *pp,
* FULL shows both authors but not dates.
* FULLER shows both authors and dates.
*/
if (!memcmp(line, "author ", 7)) {
if (!prefixcmp(line, "author ")) {
strbuf_grow(sb, linelen + 80);
pp_user_info(pp, "Author", sb, line + 7, encoding);
}
if (!memcmp(line, "committer ", 10) &&
if (!prefixcmp(line, "committer ") &&
(pp->fmt == CMIT_FMT_FULL || pp->fmt == CMIT_FMT_FULLER)) {
strbuf_grow(sb, linelen + 80);
pp_user_info(pp, "Commit", sb, line + 10, encoding);
Expand Down

0 comments on commit 8a692d2

Please sign in to comment.