diff options
author | Daniel Barkalow <barkalow@iabervon.org> | 2008-03-18 02:05:23 (GMT) |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2008-03-26 07:10:55 (GMT) |
commit | c091b3d415f95d3e4e62acddb084e211af46acbf (patch) | |
tree | d7370870e12f5dc2b4bf2a35858723c0d0c9c030 /builtin-send-pack.c | |
parent | 71a5099b647267d509e43f2c41483ca79af49d9f (diff) | |
download | git-c091b3d415f95d3e4e62acddb084e211af46acbf.zip git-c091b3d415f95d3e4e62acddb084e211af46acbf.tar.gz git-c091b3d415f95d3e4e62acddb084e211af46acbf.tar.bz2 |
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-send-pack.c')
-rw-r--r-- | builtin-send-pack.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/builtin-send-pack.c b/builtin-send-pack.c index 8afb1d0..98c54d9 100644 --- a/builtin-send-pack.c +++ b/builtin-send-pack.c @@ -536,7 +536,7 @@ static void verify_remote_names(int nr_heads, const char **heads) int i; for (i = 0; i < nr_heads; i++) { - const char *remote = strchr(heads[i], ':'); + const char *remote = strrchr(heads[i], ':'); remote = remote ? (remote + 1) : heads[i]; switch (check_ref_format(remote)) { |