Whip post 1.5.3.3 maintenance series into shape.
[gitweb.git] / combine-diff.c
index 3a9b32f6b8882f3adb91e5833c205635657a98b7..ef622340a52afb3b31b1cdf678ae0a83fb85c923 100644 (file)
@@ -215,8 +215,7 @@ static void combine_diff(const unsigned char *parent, mmfile_t *result_file,
        parent_file.ptr = grab_blob(parent, &sz);
        parent_file.size = sz;
        xpp.flags = XDF_NEED_MINIMAL;
-       xecfg.ctxlen = 0;
-       xecfg.flags = 0;
+       memset(&xecfg, 0, sizeof(xecfg));
        ecb.outf = xdiff_outf;
        ecb.priv = &state;
        memset(&state, 0, sizeof(state));
@@ -714,7 +713,7 @@ static void show_patch_diff(struct combine_diff_path *elem, int num_parent,
                        result_size = len;
                        result = xmalloc(len + 1);
                        while (sz < len) {
-                               int done = xread(fd, result+sz, len-sz);
+                               ssize_t done = xread(fd, result+sz, len-sz);
                                if (done == 0)
                                        break;
                                if (done < 0)
@@ -943,6 +942,7 @@ void diff_tree_combined(const unsigned char *sha1,
        diffopts = *opt;
        diffopts.output_format = DIFF_FORMAT_NO_OUTPUT;
        diffopts.recursive = 1;
+       diffopts.allow_external = 0;
 
        show_log_first = !!rev->loginfo && !rev->no_commit_id;
        needsep = 0;