On Sat, Apr 13, 2013 at 09:09:33AM +1000, Duy Nguyen wrote: > On Sat, Apr 13, 2013 at 1:03 AM, Adam Spiers <git@xxxxxxxxxxxxxx> wrote: > >> -static int check_ignore(const char *prefix, const char **pathspec) > >> +static int check_ignore(int argc, const char **argv, const char *prefix) > >> { > >> struct dir_struct dir; > >> - const char *path, *full_path; > >> char *seen; > >> int num_ignored = 0, dtype = DT_UNKNOWN, i; > >> struct path_exclude_check check; > >> struct exclude *exclude; > >> + struct pathspec pathspec; > >> > >> /* read_cache() is only necessary so we can watch out for submodules. */ > >> if (read_cache() < 0) > >> @@ -70,31 +70,39 @@ static int check_ignore(const char *prefix, const char **pathspec) > >> dir.flags |= DIR_COLLECT_IGNORED; > >> setup_standard_excludes(&dir); > >> > >> - if (!pathspec || !*pathspec) { > >> + if (!argc) { > > > > Is there a compelling reason for introducing argc as a new parameter > > to check_ignore(), other than simplifying the above line? And why > > rename the pathspec parameter to argv? Both these changes are > > misleading AFAICS, since paths provided to check_ignore() can come > > from sources other than CLI arguments (i.e. via --stdin). > > Because I introduced "struct pathspec pathspec;" I need to rename the > argument "pathspec" to something else. Ah, I see - that makes sense :-) > Maybe we could rename the argument to "paths"? Sounds fine to me. > > The introduction of argc also makes it possible to invoke > > check_ignore() with arguments which are not self-consistent. > > This is the same problem with main() How could main() be invoked with argc inconsistent with argv? > and other places that follow this convention. But I don't mind > dropping argc either. What is the reason for that convention? I'm willing to be persuaded either way. -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html