Branch Coverage

deps/libgit2/src/libgit2/merge_driver.c
Criterion Covered Total %
branch 32 106 30.1


line true false branch
38 0 0 GIT_ASSERT_ARG_WITH_RETVAL(src, NULL);
45 0 0 GIT_ASSERT_ARG_WITH_RETVAL(src, NULL);
52 0 0 GIT_ASSERT_ARG_WITH_RETVAL(src, NULL);
59 0 0 GIT_ASSERT_ARG_WITH_RETVAL(src, NULL);
66 0 0 GIT_ASSERT_ARG_WITH_RETVAL(src, NULL);
85 6 0 if (src->file_opts)
88 2 4 if (driver->favor)
91 0 6 if ((error = git_merge_file_from_index(&result, src->repo,
95 4 2 if (!result.automergeable &&
4 0 if (!result.automergeable &&
101 2 0 *path_out = git_merge_file__best_path(
2 0 *path_out = git_merge_file__best_path(
2 0 *path_out = git_merge_file__best_path(
106 2 0 *mode_out = git_merge_file__best_mode(
2 0 *mode_out = git_merge_file__best_mode(
2 0 *mode_out = git_merge_file__best_mode(
189 0 261 GIT_ERROR_CHECK_ALLOC(entry);
202 0 87 if (git_rwlock_init(&merge_driver_registry.lock) < 0)
205 0 87 if ((error = git_vector_init(&merge_driver_registry.drivers, 3,
209 87 0 if ((error = merge_driver_registry_insert(
210 87 0 merge_driver_name__text, &git_merge_driver__text.base)) < 0 ||
212 87 0 merge_driver_name__union, &git_merge_driver__union.base)) < 0 ||
220 0 87 if (error < 0)
231 0 0 if (git_rwlock_wrlock(&merge_driver_registry.lock) < 0)
234 0 0 git_vector_foreach(&merge_driver_registry.drivers, i, entry) {
235 0 0 if (entry->driver->shutdown)
260 0 0 if (!merge_driver_registry_find(pos, name))
270 0 0 GIT_ASSERT_ARG(name);
271 0 0 GIT_ASSERT_ARG(driver);
273 0 0 if (git_rwlock_wrlock(&merge_driver_registry.lock) < 0) {
278 0 0 if (!merge_driver_registry_find(NULL, name)) {
298 0 0 if (git_rwlock_wrlock(&merge_driver_registry.lock) < 0) {
303 0 0 if ((entry = merge_driver_registry_lookup(&pos, name)) == NULL) {
312 0 0 if (entry->initialized && entry->driver->shutdown) {
0 0 if (entry->initialized && entry->driver->shutdown) {
335 4 0 if (name == merge_driver_name__text)
337 0 0 else if (name == merge_driver_name__binary)
340 0 0 if (git_rwlock_rdlock(&merge_driver_registry.lock) < 0) {
349 0 0 if (entry == NULL) {
354 0 0 if (!entry->initialized) {
355 0 0 if (entry->driver->initialize &&
0 0 if (entry->driver->initialize &&
376 0 4 if ((error = git_attr_get(&value, repo, 0, path, "merge")) < 0)
380 0 4 if (GIT_ATTR_IS_TRUE(value))
384 0 4 else if (GIT_ATTR_IS_FALSE(value))
387 4 0 else if (GIT_ATTR_IS_UNSPECIFIED(value) && default_driver)
0 4 else if (GIT_ATTR_IS_UNSPECIFIED(value) && default_driver)
390 4 0 else if (GIT_ATTR_IS_UNSPECIFIED(value))
405 0 4 if (driver == NULL)
419 4 0 path = git_merge_file__best_path(
4 0 path = git_merge_file__best_path(
4 0 path = git_merge_file__best_path(
424 0 4 if ((error = merge_driver_name_for_path(