Fix earlier mismerges.
[gitweb.git] / diff-lib.c
index 63da3b521d3bf580709ef6bf0f6e4aa83ff7d958..2183b41b03d08092ba6d98a642757640b86710d6 100644 (file)
@@ -308,12 +308,20 @@ static void mark_merge_entries(void)
        }
 }
 
-int run_diff_index(struct rev_info *revs, int cached, int match_missing)
+int run_diff_index(struct rev_info *revs, int cached)
 {
        int ret;
        struct object *ent;
        struct tree *tree;
        const char *tree_name;
+       int match_missing = 0;
+
+       /* 
+        * Backward compatibility wart - "diff-index -m" does
+        * not mean "do not ignore merges", but totally different.
+        */
+       if (!revs->ignore_merges)
+               match_missing = 1;
 
        if (read_cache() < 0) {
                perror("read_cache");