Thread (66 messages) flat view 66 messages, 4 authors, 2016-06-15

Re: [PATCH v1 23/45] check-ignore: convert to use parse_pathspec

From: Adam Spiers <hidden>
Date: 2016-06-15 22:56:49

On Sat, Apr 13, 2013 at 09:09:33AM +1000, Duy Nguyen wrote:
On Sat, Apr 13, 2013 at 1:03 AM, Adam Spiers [off-list ref] wrote:
quoted
quoted
-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.
quoted
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.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help