all repos — cgit @ 13d2b0b25cf19de03c7cdcf8bb708be1168aeda7

a hyperfast web frontend for git written in c

Skip unknown header fields when parsing tags and commits

Both the commit- and tagparser failed to handle unexpected header fields.
This adds futureproofing by simply skipping any header we don't know/care
about.

Signed-off-by: Lars Hjemli <hjemli@gmail.com>
Lars Hjemli hjemli@gmail.com
Wed, 24 Oct 2007 21:14:44 +0200
commit

13d2b0b25cf19de03c7cdcf8bb708be1168aeda7

parent

fd39489f4f49f9efe45c881d3f5f503c0068148a

1 files changed, 6 insertions(+), 0 deletions(-)

jump to
M parsing.cparsing.c

@@ -233,6 +233,9 @@ ret->committer_date = atol(++t);

p = strchr(t, '\n') + 1; } + while (*p && (*p != '\n')) + p = strchr(p, '\n') + 1; // skip unknown header fields + while (*p == '\n') p = strchr(p, '\n') + 1;

@@ -291,6 +294,9 @@ ret->tagger_date = atol(++t);

} p = strchr(p, '\n') + 1; } + + while (p && *p && (*p != '\n')) + p = strchr(p, '\n') + 1; // skip unknown tag fields while (p && (*p == '\n')) p = strchr(p, '\n') + 1;