diff options
author | Daniel Barkalow <barkalow@iabervon.org> | 2008-03-17 22:05:23 -0400 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-03-26 00:10:55 -0700 |
commit | c091b3d415f95d3e4e62acddb084e211af46acbf (patch) | |
tree | d7370870e12f5dc2b4bf2a35858723c0d0c9c030 /builtin-fetch.c | |
parent | 71a5099b647267d509e43f2c41483ca79af49d9f (diff) | |
download | git-c091b3d415f95d3e4e62acddb084e211af46acbf.tar.gz git-c091b3d415f95d3e4e62acddb084e211af46acbf.tar.xz |
Tighten refspec processing
This changes the pattern matching code to not store the required final
/ before the *, and then to require each side to be a valid ref (or
empty). In particular, any refspec that looks like it should be a
pattern but doesn't quite meet the requirements will be found to be
invalid as a fallback non-pattern.
This was cherry picked from commit ef00d15 (Tighten refspec processing,
2008-03-17), and two fix-up commits 46220ca (remote.c: Fix overtight
refspec validation, 2008-03-20) and 7d19da4 (refspec: allow colon-less
wildcard "refs/category/*", 2008-03-25) squashed in.
Signed-off-by: Daniel Barkalow <barkalow@iabervon.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'builtin-fetch.c')
-rw-r--r-- | builtin-fetch.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/builtin-fetch.c b/builtin-fetch.c index 9a6ddcec9..6fd006f48 100644 --- a/builtin-fetch.c +++ b/builtin-fetch.c @@ -630,5 +630,6 @@ int cmd_fetch(int argc, const char **argv, const char *prefix) signal(SIGINT, unlock_pack_on_signal); atexit(unlock_pack); - return do_fetch(transport, parse_ref_spec(ref_nr, refs), ref_nr); + return do_fetch(transport, + parse_fetch_refspec(ref_nr, refs), ref_nr); } |