diff options
Diffstat (limited to 'examples')
| -rw-r--r-- | examples/blame.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/examples/blame.c b/examples/blame.c index df687a71a..8ecf2970e 100644 --- a/examples/blame.c +++ b/examples/blame.c @@ -128,22 +128,20 @@ int main(int argc, char *argv[]) while (i < git_blob_rawsize(blob)) { const char *eol = strchr(rawdata+i, '\n'); char oid[10] = {0}; - git_commit *hunkcommit; - const git_signature *sig; const git_blame_hunk *hunk = git_blame_get_hunk_byline(blame, line); if (hunk) { + char sig[128] = {0}; + git_oid_tostr(oid, 10, &hunk->final_commit_id); - check(git_commit_lookup(&hunkcommit, repo, &hunk->final_commit_id), "Commit lookup error"); - sig = git_commit_author(hunkcommit); + snprintf(sig, 30, "%s <%s>", hunk->final_signature->name, hunk->final_signature->email); printf("%s ( %-30s %3d) %.*s\n", oid, - sig->name, + sig, line, (int)(eol-rawdata-i), rawdata+i); - git_commit_free(hunkcommit); } i = eol - rawdata + 1; |
