Merge branch 'eb/mailinfo' into next
[gitweb.git] / builtin-diff.c
index b6114ce948bfcb68018fb9799bb26836957bb9c2..27451d56134e08364c33c26d5074693dd4437d31 100644 (file)
@@ -84,8 +84,7 @@ static void stuff_change(struct diff_options *opt,
 
        if (opt->reverse_diff) {
                unsigned tmp;
-               const
-                       const unsigned char *tmp_u;
+               const unsigned char *tmp_u;
                const char *tmp_c;
                tmp = old_mode; old_mode = new_mode; new_mode = tmp;
                tmp_u = old_sha1; old_sha1 = new_sha1; new_sha1 = tmp_u;
@@ -123,7 +122,7 @@ static int builtin_diff_b_f(struct rev_info *revs,
        stuff_change(&revs->diffopt,
                     canon_mode(st.st_mode), canon_mode(st.st_mode),
                     blob[0].sha1, null_sha1,
-                    blob[0].name, path);
+                    path, path);
        diffcore_std(&revs->diffopt);
        diff_flush(&revs->diffopt);
        return 0;
@@ -133,7 +132,9 @@ static int builtin_diff_blobs(struct rev_info *revs,
                              int argc, const char **argv,
                              struct blobinfo *blob)
 {
-       /* Blobs */
+       /* Blobs: the arguments are reversed when setup_revisions()
+        * picked them up.
+        */
        unsigned mode = canon_mode(S_IFREG | 0644);
 
        while (1 < argc) {
@@ -146,8 +147,8 @@ static int builtin_diff_blobs(struct rev_info *revs,
        }
        stuff_change(&revs->diffopt,
                     mode, mode,
-                    blob[0].sha1, blob[1].sha1,
-                    blob[1].name, blob[1].name);
+                    blob[1].sha1, blob[0].sha1,
+                    blob[0].name, blob[0].name);
        diffcore_std(&revs->diffopt);
        diff_flush(&revs->diffopt);
        return 0;
@@ -232,7 +233,7 @@ static int builtin_diff_combined(struct rev_info *revs,
        return 0;
 }
 
-static void add_head(struct rev_info *revs)
+void add_head(struct rev_info *revs)
 {
        unsigned char sha1[20];
        struct object *obj;
@@ -271,7 +272,7 @@ int cmd_diff(int argc, const char **argv, char **envp)
         *
         * Other cases are errors.
         */
-       
+
        git_config(git_diff_config);
        init_revisions(&rev);
        rev.diffopt.output_format = DIFF_FORMAT_PATCH;
@@ -321,7 +322,7 @@ int cmd_diff(int argc, const char **argv, char **envp)
                        blob[blobs].name = name;
                        blobs++;
                        continue;
-                       
+
                }
                die("unhandled object '%s' given.", name);
        }