On Wed, Oct 10 2018, Lucas De Marchi wrote: > Do like it's done in grep so mode doesn't end up as > 0160000, which means range-diff doesn't work if one has > "submodule.diff = log" in the configuration. Without this > while using range-diff I only get a > > Submodule a 0000000...0000000 (new submodule) I'm not familiar enough with this to tell what the real problem is that's being solved from the commit message, but if it means that now range-diff works in some configuration, presumably that can be reduced to a simple set of commands that didn't work before but now does, and therefore a test in t/t3206-range-diff.sh. > instead of the diff between the revisions. > > Signed-off-by: Lucas De Marchi <lucas.demarchi@xxxxxxxxx> > --- > range-diff.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/range-diff.c b/range-diff.c > index 60edb2f518..bd8083f2d1 100644 > --- a/range-diff.c > +++ b/range-diff.c > @@ -354,7 +354,7 @@ static struct diff_filespec *get_filespec(const char *name, const char *p) > { > struct diff_filespec *spec = alloc_filespec(name); > > - fill_filespec(spec, &null_oid, 0, 0644); > + fill_filespec(spec, &null_oid, 0, 0100644); > spec->data = (char *)p; > spec->size = strlen(p); > spec->should_munmap = 0;