|  line  | 
 true  | 
 false  | 
 branch  | 
 
| 
28
 | 
 0  | 
 0  | 
 	if (!entry)  | 
 
| 
48
 | 
 0  | 
 0  | 
 	GIT_ASSERT_ARG(a && a->replace_email);  | 
 
| 
 | 
 0  | 
 0  | 
 	GIT_ASSERT_ARG(a && a->replace_email);  | 
 
| 
49
 | 
 0  | 
 0  | 
 	GIT_ASSERT_ARG(b && b->replace_email);  | 
 
| 
 | 
 0  | 
 0  | 
 	GIT_ASSERT_ARG(b && b->replace_email);  | 
 
| 
52
 | 
 0  | 
 0  | 
 	if (cmp)  | 
 
| 
56
 | 
 0  | 
 0  | 
 	if (a->replace_name == NULL || b->replace_name == NULL)  | 
 
| 
 | 
 0  | 
 0  | 
 	if (a->replace_name == NULL || b->replace_name == NULL)  | 
 
| 
74
 | 
 0  | 
 0  | 
 	return git_parse_peek(&c, ctx, GIT_PARSE_PEEK_SKIP_WHITESPACE) < 0 || c == '#';  | 
 
| 
 | 
 0  | 
 0  | 
 	return git_parse_peek(&c, ctx, GIT_PARSE_PEEK_SKIP_WHITESPACE) < 0 || c == '#';  | 
 
| 
81
 | 
 0  | 
 0  | 
 	while (ctx->line_len > 0 && *ctx->line != '#' && *ctx->line != needle)  | 
 
| 
 | 
 0  | 
 0  | 
 	while (ctx->line_len > 0 && *ctx->line != '#' && *ctx->line != needle)  | 
 
| 
 | 
 0  | 
 0  | 
 	while (ctx->line_len > 0 && *ctx->line != '#' && *ctx->line != needle)  | 
 
| 
84
 | 
 0  | 
 0  | 
 	if (ctx->line_len == 0 || *ctx->line == '#')  | 
 
| 
 | 
 0  | 
 0  | 
 	if (ctx->line_len == 0 || *ctx->line == '#')  | 
 
| 
112
 | 
 0  | 
 0  | 
 	if (is_eol(ctx))  | 
 
| 
116
 | 
 0  | 
 0  | 
 	if (advance_until(&start, &len, ctx, '<') < 0)  | 
 
| 
126
 | 
 0  | 
 0  | 
 	if (advance_until(&start, &len, ctx, '>') < 0)  | 
 
| 
130
 | 
 0  | 
 0  | 
 	if (!is_eol(ctx)) {  | 
 
| 
134
 | 
 0  | 
 0  | 
 		if (advance_until(&start, &len, ctx, '<') < 0)  | 
 
| 
139
 | 
 0  | 
 0  | 
 		if (advance_until(&start, &len, ctx, '>') < 0)  | 
 
| 
145
 | 
 0  | 
 0  | 
 	if (!is_eol(ctx))  | 
 
| 
155
 | 
 0  | 
 0  | 
 	GIT_ERROR_CHECK_ALLOC(mm);  | 
 
| 
158
 | 
 0  | 
 0  | 
 	if (error < 0) {  | 
 
| 
170
 | 
 2  | 
 0  | 
 	if (!mm)  | 
 
| 
173
 | 
 0  | 
 0  | 
 	git_vector_foreach(&mm->entries, idx, entry)  | 
 
| 
189
 | 
 0  | 
 0  | 
 	GIT_ERROR_CHECK_ALLOC(entry);  | 
 
| 
191
 | 
 0  | 
 0  | 
 	GIT_ASSERT_ARG(mm);  | 
 
| 
192
 | 
 0  | 
 0  | 
 	GIT_ASSERT_ARG(replace_email && *replace_email);  | 
 
| 
 | 
 0  | 
 0  | 
 	GIT_ASSERT_ARG(replace_email && *replace_email);  | 
 
| 
194
 | 
 0  | 
 0  | 
 	if (real_name_size > 0) {  | 
 
| 
196
 | 
 0  | 
 0  | 
 		GIT_ERROR_CHECK_ALLOC(entry->real_name);  | 
 
| 
198
 | 
 0  | 
 0  | 
 	if (real_email_size > 0) {  | 
 
| 
200
 | 
 0  | 
 0  | 
 		GIT_ERROR_CHECK_ALLOC(entry->real_email);  | 
 
| 
202
 | 
 0  | 
 0  | 
 	if (replace_name_size > 0) {  | 
 
| 
204
 | 
 0  | 
 0  | 
 		GIT_ERROR_CHECK_ALLOC(entry->replace_name);  | 
 
| 
207
 | 
 0  | 
 0  | 
 	GIT_ERROR_CHECK_ALLOC(entry->replace_email);  | 
 
| 
210
 | 
 0  | 
 0  | 
 	if (error == GIT_EEXISTS)  | 
 
| 
212
 | 
 0  | 
 0  | 
 	else if (error < 0)  | 
 
| 
222
 | 
 0  | 
 0  | 
 	return mailmap_add_entry_unterminated(  | 
 
| 
 | 
 0  | 
 0  | 
 	return mailmap_add_entry_unterminated(  | 
 
| 
 | 
 0  | 
 0  | 
 	return mailmap_add_entry_unterminated(  | 
 
| 
242
 | 
 0  | 
 0  | 
 	if (memchr(buf, '\0', len) != NULL)  | 
 
| 
248
 | 
 0  | 
 0  | 
 	while (ctx.remain_len > 0) {  | 
 
| 
251
 | 
 0  | 
 0  | 
 		if (error < 0) {  | 
 
| 
261
 | 
 0  | 
 0  | 
 		if (error < 0)  | 
 
| 
278
 | 
 0  | 
 0  | 
 	if (error < 0)  | 
 
| 
282
 | 
 0  | 
 0  | 
 	if (error < 0) {  | 
 
| 
297
 | 
 0  | 
 0  | 
 	GIT_ASSERT_ARG(mm);  | 
 
| 
298
 | 
 0  | 
 0  | 
 	GIT_ASSERT_ARG(repo);  | 
 
| 
301
 | 
 0  | 
 0  | 
 	if (error < 0)  | 
 
| 
305
 | 
 0  | 
 0  | 
 	if (error < 0)  | 
 
| 
309
 | 
 0  | 
 0  | 
 	if (error < 0)  | 
 
| 
313
 | 
 0  | 
 0  | 
 	if (error < 0)  | 
 
| 
326
 | 
 0  | 
 0  | 
 	const char *base = repo ? git_repository_workdir(repo) : NULL;  | 
 
| 
332
 | 
 0  | 
 0  | 
 	if (error < 0)  | 
 
| 
336
 | 
 0  | 
 0  | 
 	if (error < 0)  | 
 
| 
340
 | 
 0  | 
 0  | 
 	if (error < 0)  | 
 
| 
344
 | 
 0  | 
 0  | 
 	if (error < 0)  | 
 
| 
363
 | 
 0  | 
 0  | 
 	if (repo->is_bare)  | 
 
| 
367
 | 
 0  | 
 0  | 
 	if (git_repository_config(&config, repo) == 0) {  | 
 
| 
368
 | 
 0  | 
 0  | 
 		if (git_config__get_string_buf(&rev_buf, config, MM_BLOB_CONFIG) == 0)  | 
 
| 
370
 | 
 0  | 
 0  | 
 		if (git_config__get_path(&path_buf, config, MM_FILE_CONFIG) == 0)  | 
 
| 
385
 | 
 0  | 
 0  | 
 	if (!repo->is_bare)  | 
 
| 
387
 | 
 0  | 
 0  | 
 	if (rev != NULL)  | 
 
| 
389
 | 
 0  | 
 0  | 
 	if (path != NULL)  | 
 
| 
401
 | 
 0  | 
 0  | 
 	GIT_ASSERT_ARG(out);  | 
 
| 
402
 | 
 0  | 
 0  | 
 	GIT_ASSERT_ARG(repo);  | 
 
| 
404
 | 
 0  | 
 0  | 
 	if ((error = git_mailmap_new(out)) < 0)  | 
 
| 
423
 | 
 0  | 
 3  | 
 	GIT_ASSERT_ARG_WITH_RETVAL(email, NULL);  | 
 
| 
425
 | 
 3  | 
 0  | 
 	if (!mm)  | 
 
| 
434
 | 
 0  | 
 0  | 
 	if (error >= 0)  | 
 
| 
436
 | 
 0  | 
 0  | 
 	else if (error != GIT_ENOTFOUND)  | 
 
| 
440
 | 
 0  | 
 0  | 
 	for (; idx < git_vector_length(&mm->entries); ++idx) {  | 
 
| 
443
 | 
 0  | 
 0  | 
 		if (git__strcmp(entry->replace_email, email))  | 
 
| 
447
 | 
 0  | 
 0  | 
 		GIT_ASSERT_WITH_RETVAL(entry->replace_name, NULL);  | 
 
| 
448
 | 
 0  | 
 0  | 
 		if (!name || !git__strcmp(entry->replace_name, name))  | 
 
| 
 | 
 0  | 
 0  | 
 		if (!name || !git__strcmp(entry->replace_name, name))  | 
 
| 
452
 | 
 0  | 
 0  | 
 	if (fallback < 0)  | 
 
| 
464
 | 
 0  | 
 3  | 
 	GIT_ASSERT(name);  | 
 
| 
465
 | 
 0  | 
 3  | 
 	GIT_ASSERT(email);  | 
 
| 
470
 | 
 0  | 
 3  | 
 	if ((entry = git_mailmap_entry_lookup(mailmap, name, email))) {  | 
 
| 
471
 | 
 0  | 
 0  | 
 		if (entry->real_name)  | 
 
| 
473
 | 
 0  | 
 0  | 
 		if (entry->real_email)  | 
 
| 
486
 | 
 0  | 
 3  | 
 	if (!sig)  | 
 
| 
490
 | 
 0  | 
 3  | 
 	if (error < 0)  | 
 
| 
494
 | 
 0  | 
 3  | 
 	if (error < 0)  |