-rw-r--r-- | parsing.c | 12 |
1 files changed, 10 insertions, 2 deletions
@@ -130,24 +130,32 @@ struct commitinfo *cgit_parse_commit(struct commit *commit) while (!strncmp(p, "parent ", 7)) p += 48; // "parent " + hex[40] + "\n" if (!strncmp(p, "author ", 7)) { p += 7; t = strchr(p, '<') - 1; ret->author = substr(p, t); - p = strchr(p, '\n') + 1; + p = t; + t = strchr(t, '>') + 1; + ret->author_email = substr(p, t); + ret->author_date = atol(++t); + p = strchr(t, '\n') + 1; } if (!strncmp(p, "committer ", 9)) { p += 9; t = strchr(p, '<') - 1; ret->committer = substr(p, t); - p = strchr(p, '\n') + 1; + p = t; + t = strchr(t, '>') + 1; + ret->committer_email = substr(p, t); + ret->committer_date = atol(++t); + p = strchr(t, '\n') + 1; } while (*p == '\n') p = strchr(p, '\n') + 1; t = strchr(p, '\n'); ret->subject = substr(p, t); p = t + 1; |