| line |
true |
false |
branch |
|
21
|
13 |
0 |
if (o) |
|
28
|
16 |
2 |
if (o && --o->refcnt <= 0) { |
|
|
3 |
13 |
if (o && --o->refcnt <= 0) { |
|
29
|
2 |
1 |
if (o->previous) |
|
45
|
1 |
3 |
if ((error = git_object_lookup_bypath(&blob, (git_object*)commit, |
|
49
|
0 |
3 |
GIT_ERROR_CHECK_ALLOC_ADD(&alloc_len, sizeof(*o), path_len); |
|
|
0 |
3 |
GIT_ERROR_CHECK_ALLOC_ADD(&alloc_len, sizeof(*o), path_len); |
|
50
|
0 |
3 |
GIT_ERROR_CHECK_ALLOC_ADD(&alloc_len, alloc_len, 1); |
|
|
0 |
3 |
GIT_ERROR_CHECK_ALLOC_ADD(&alloc_len, alloc_len, 1); |
|
52
|
0 |
3 |
GIT_ERROR_CHECK_ALLOC(o); |
|
73
|
0 |
1 |
for (e = blame->ent; e; e = e->next) { |
|
74
|
0 |
0 |
if (e->suspect->commit == commit && !strcmp(e->suspect->path, path)) { |
|
|
0 |
0 |
if (e->suspect->commit == commit && !strcmp(e->suspect->path, path)) { |
|
91
|
11 |
9 |
if (a == b) |
|
93
|
9 |
0 |
if (git_oid_cmp(git_commit_id(a->commit), git_commit_id(b->commit))) |
|
107
|
3 |
2 |
for (e=blame->ent; e; e=e->next) { |
|
108
|
2 |
1 |
if (e->guilty || !same_suspect(e->suspect, target)) |
|
|
0 |
2 |
if (e->guilty || !same_suspect(e->suspect, target)) |
|
110
|
2 |
0 |
if (last_in_target < e->s_lno + e->num_lines) { |
|
139
|
0 |
2 |
if (e->s_lno < tlno) { |
|
152
|
2 |
0 |
if (same < e->s_lno + e->num_lines) { |
|
168
|
0 |
2 |
if (split[1].num_lines < 1) |
|
183
|
3 |
1 |
for (ent = blame->ent; ent && ent->lno < e->lno; ent = ent->next) |
|
|
2 |
1 |
for (ent = blame->ent; ent && ent->lno < e->lno; ent = ent->next) |
|
188
|
2 |
0 |
if (prev) { |
|
195
|
1 |
1 |
if (e->next) |
|
226
|
0 |
2 |
if (split[0].suspect && split[2].suspect) { |
|
|
0 |
0 |
if (split[0].suspect && split[2].suspect) { |
|
232
|
0 |
0 |
GIT_ERROR_CHECK_ALLOC(new_entry); |
|
238
|
0 |
0 |
GIT_ERROR_CHECK_ALLOC(new_entry); |
|
241
|
2 |
0 |
} else if (!split[0].suspect && !split[2].suspect) { |
|
|
0 |
2 |
} else if (!split[0].suspect && !split[2].suspect) { |
|
247
|
0 |
2 |
} else if (split[0].suspect) { |
|
251
|
0 |
0 |
GIT_ERROR_CHECK_ALLOC(new_entry); |
|
258
|
0 |
2 |
GIT_ERROR_CHECK_ALLOC(new_entry); |
|
273
|
6 |
2 |
for (i=0; i<3; i++) |
|
292
|
2 |
0 |
if (split[1].suspect) |
|
293
|
0 |
2 |
if (split_blame(blame, split, e) < 0) |
|
315
|
10 |
4 |
for (e = blame->ent; e; e = e->next) { |
|
316
|
8 |
2 |
if (e->guilty || !same_suspect(e->suspect, target)) |
|
|
2 |
6 |
if (e->guilty || !same_suspect(e->suspect, target)) |
|
318
|
2 |
4 |
if (same <= e->s_lno) |
|
320
|
2 |
2 |
if (tlno < e->s_lno + e->num_lines) { |
|
321
|
0 |
2 |
if (blame_overlap(blame, e, tlno, plno, same, parent) < 0) |
|
336
|
0 |
2 |
if (blame_chunk(d->blame, d->tlno, d->plno, start_b, d->target, d->parent) < 0) |
|
352
|
0 |
2 |
if (ctx) |
|
355
|
0 |
2 |
while (blk + trimmed <= smaller && !memcmp(ap - blk, bp - blk, blk)) { |
|
|
0 |
0 |
while (blk + trimmed <= smaller && !memcmp(ap - blk, bp - blk, blk)) { |
|
361
|
0 |
2 |
while (recovered < trimmed) |
|
362
|
0 |
0 |
if (ap[recovered++] == '\n') |
|
374
|
0 |
2 |
if (options->flags & GIT_BLAME_IGNORE_WHITESPACE) |
|
382
|
2 |
0 |
if (file_a.size > GIT_XDIFF_MAX_SIZE || |
|
|
0 |
2 |
if (file_a.size > GIT_XDIFF_MAX_SIZE || |
|
394
|
4 |
0 |
if (o->blob) { |
|
409
|
0 |
2 |
if (!find_last_in_target(&last_in_target, blame, target)) |
|
415
|
0 |
2 |
if (diff_hunks(file_p, file_o, &d, &blame->options) < 0) |
|
419
|
0 |
2 |
if (blame_chunk(blame, d.tlno, d.plno, last_in_target, target, parent) < 0) |
|
454
|
0 |
3 |
if (0 != git_diff_tree_to_tree(&difflist, blame->repository, ptree, otree, &diffopts)) |
|
457
|
0 |
3 |
if (!git_diff_num_deltas(difflist)) { |
|
467
|
0 |
3 |
if (0 != git_diff_tree_to_tree(&difflist, blame->repository, ptree, otree, &diffopts)) |
|
472
|
0 |
3 |
if (0 != git_diff_find_similar(difflist, &findopts)) |
|
476
|
3 |
3 |
for (i=0; i<(int)git_diff_num_deltas(difflist); i++) { |
|
479
|
3 |
0 |
if (!git_vector_bsearch(NULL, &blame->paths, delta->new_file.path)) |
|
508
|
0 |
0 |
for (e=blame->ent; e; e=e->next) { |
|
509
|
0 |
0 |
if (!same_suspect(e->suspect, origin)) |
|
528
|
0 |
3 |
if (!git_oid_cmp(git_commit_id(commit), &blame->options.oldest_commit)) |
|
531
|
0 |
3 |
else if (opt & GIT_BLAME_FIRST_PARENT && num_parents > 1) |
|
|
0 |
0 |
else if (opt & GIT_BLAME_FIRST_PARENT && num_parents > 1) |
|
535
|
0 |
3 |
if (!num_parents) { |
|
538
|
3 |
0 |
} else if (num_parents < (int)ARRAY_SIZE(sg_buf)) |
|
542
|
0 |
0 |
GIT_ERROR_CHECK_ALLOC(sg_origin); |
|
545
|
3 |
3 |
for (i=0; i
|
|
549
|
0 |
3 |
if (sg_origin[i]) |
|
552
|
0 |
3 |
if ((error = git_commit_parent(&p, origin->commit, i)) < 0) |
|
556
|
1 |
2 |
if (!porigin) { |
|
566
|
2 |
0 |
if (porigin->blob && origin->blob && |
|
572
|
0 |
2 |
for (j = same = 0; j
|
|
578
|
2 |
0 |
if (!same) |
|
585
|
3 |
3 |
for (i=0; i
|
|
587
|
1 |
2 |
if (!porigin) |
|
589
|
2 |
0 |
if (!origin->previous) { |
|
594
|
0 |
2 |
if ((ret = pass_blame_to_parent(blame, origin, porigin)) != 0) { |
|
595
|
0 |
0 |
if (ret < 0) |
|
607
|
3 |
3 |
for (i=0; i
|
|
608
|
2 |
1 |
if (sg_origin[i]) |
|
610
|
0 |
3 |
if (sg_origin != sg_buf) |
|
624
|
3 |
0 |
for (ent=blame->ent; ent && (next = ent->next); ent = next) { |
|
|
2 |
1 |
for (ent=blame->ent; ent && (next = ent->next); ent = next) { |
|
625
|
0 |
2 |
if (same_suspect(ent->suspect, next->suspect) && |
|
|
0 |
0 |
if (same_suspect(ent->suspect, next->suspect) && |
|
626
|
0 |
0 |
ent->guilty == next->guilty && |
|
631
|
0 |
0 |
if (ent->next) |
|
650
|
7 |
3 |
for (ent = blame->ent; !suspect && ent; ent = ent->next) |
|
|
6 |
1 |
for (ent = blame->ent; !suspect && ent; ent = ent->next) |
|
651
|
3 |
3 |
if (!ent->guilty) |
|
653
|
1 |
3 |
if (!suspect) |
|
659
|
0 |
3 |
if ((error = pass_blame(blame, suspect, opt)) < 0) |
|
663
|
8 |
3 |
for (ent = blame->ent; ent; ent = ent->next) { |
|
664
|
3 |
5 |
if (same_suspect(ent->suspect, suspect)) { |
|
674
|
1 |
0 |
if (!error) |
|
682
|
0 |
3 |
if (!ent) return; |