summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPierre-Olivier Latour <pol@mac.com>2015-06-10 10:09:10 -0700
committerPierre-Olivier Latour <pol@mac.com>2015-06-10 10:09:10 -0700
commit50456801c017e22696b9d756daf3a4a66e6b9bb8 (patch)
tree440105769c6eabeece4dcd888b33baa23a2e8480
parentda6720fcc5d9f368e7aa562384439498c1bf307e (diff)
downloadlibgit2-50456801c017e22696b9d756daf3a4a66e6b9bb8.tar.gz
Fixed handling of GIT_DELTA_CONFLICTED in git_diff_find_similar()
git_diff_find_similar() now ignores git_diff_delta records with a status of GIT_DELTA_CONFLICTED, which fixes a crash due to assert() being hit.
-rw-r--r--src/diff_tform.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/diff_tform.c b/src/diff_tform.c
index 7d8463573..03dd9c9f7 100644
--- a/src/diff_tform.c
+++ b/src/diff_tform.c
@@ -676,11 +676,13 @@ static bool is_rename_target(
return false;
/* only consider ADDED, RENAMED, COPIED, and split MODIFIED as
- * targets; maybe include UNTRACKED and IGNORED if requested.
+ * targets; maybe include UNTRACKED if requested.
*/
switch (delta->status) {
case GIT_DELTA_UNMODIFIED:
case GIT_DELTA_DELETED:
+ case GIT_DELTA_IGNORED:
+ case GIT_DELTA_CONFLICTED:
return false;
case GIT_DELTA_MODIFIED:
@@ -707,9 +709,6 @@ static bool is_rename_target(
return false;
break;
- case GIT_DELTA_IGNORED:
- return false;
-
default: /* all other status values should be checked */
break;
}
@@ -735,6 +734,7 @@ static bool is_rename_source(
case GIT_DELTA_UNTRACKED:
case GIT_DELTA_UNREADABLE:
case GIT_DELTA_IGNORED:
+ case GIT_DELTA_CONFLICTED:
return false;
case GIT_DELTA_DELETED: