Merge branch 'jk/revision-remove-cmdline-pathspec' into next
authorJunio C Hamano <gitster@pobox.com>
Sun, 24 Sep 2017 10:39:42 +0000 (19:39 +0900)
committerJunio C Hamano <gitster@pobox.com>
Sun, 24 Sep 2017 10:39:42 +0000 (19:39 +0900)
Code clean-up that also plugs memory leaks.

* jk/revision-remove-cmdline-pathspec:
pathspec doc: parse_pathspec does not maintain references to args
revision: replace "struct cmdline_pathspec" with argv_array

1  2 
pathspec.c
diff --combined pathspec.c
index 1079362450e2f4d8a054ef7cb155a0fbcbc065bc,cdefdc7cc0e0be248297d1191eefe72418923f7a..82eb39cd679ffbce82abac691c6f4343335b9924
@@@ -526,17 -526,13 +526,13 @@@ static void NORETURN unsupported_magic(
            pattern, sb.buf);
  }
  
- /*
-  * Given command line arguments and a prefix, convert the input to
-  * pathspec. die() if any magic in magic_mask is used.
-  */
  void parse_pathspec(struct pathspec *pathspec,
                    unsigned magic_mask, unsigned flags,
                    const char *prefix, const char **argv)
  {
        struct pathspec_item *item;
        const char *entry = argv ? *argv : NULL;
 -      int i, n, prefixlen, warn_empty_string, nr_exclude = 0;
 +      int i, n, prefixlen, nr_exclude = 0;
  
        memset(pathspec, 0, sizeof(*pathspec));
  
        }
  
        n = 0;
 -      warn_empty_string = 1;
        while (argv[n]) {
 -              if (*argv[n] == '\0' && warn_empty_string) {
 -                      warning(_("empty strings as pathspecs will be made invalid in upcoming releases. "
 -                                "please use . instead if you meant to match all paths"));
 -                      warn_empty_string = 0;
 -              }
 +              if (*argv[n] == '\0')
 +                      die("empty string is not a valid pathspec. "
 +                                "please use . instead if you meant to match all paths");
                n++;
        }