tree_entry_interesting(): Make return value more specific
authorElijah Newren <newren@gmail.com>
Thu, 26 Aug 2010 06:21:48 +0000 (00:21 -0600)
committerJunio C Hamano <gitster@pobox.com>
Thu, 26 Aug 2010 16:53:36 +0000 (09:53 -0700)
tree_entry_interesting() can signal to its callers not only if the given
entry matches one of the specified paths, but whether all remaining paths
will (or will not) match.  When no paths are specified, all paths are
considered interesting, so intead of returning 1 (this path is interesting)
return 2 (all paths are interesting).

This will allow the caller to avoid calling tree_entry_interesting() again,
which theoretically should speed up tree walking.  I am not able to measure
any actual gains in practice, but it certainly can not hurt and seems to
make the code more readable to me.

Signed-off-by: Elijah Newren <newren@gmail.com>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
tree-diff.c

index 4d85fef5d0aebbf5867cd95009721f0e28d71523..1b41b7f4508cfc77afbe4cb2aabbf27a0c977558 100644 (file)
@@ -103,7 +103,7 @@ static int tree_entry_interesting(struct tree_desc *desc, const char *base, int
        int never_interesting = -1;
 
        if (!opt->nr_paths)
-               return 1;
+               return 2;
 
        sha1 = tree_entry_extract(desc, &path, &mode);