summaryrefslogtreecommitdiff
path: root/examples
diff options
context:
space:
mode:
Diffstat (limited to 'examples')
-rw-r--r--examples/blame.c10
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;