summaryrefslogtreecommitdiff
path: root/builtin-send-pack.c
diff options
context:
space:
mode:
authorDaniel Barkalow <barkalow@iabervon.org>2008-03-18 02:05:23 (GMT)
committerJunio C Hamano <gitster@pobox.com>2008-03-26 07:10:55 (GMT)
commitc091b3d415f95d3e4e62acddb084e211af46acbf (patch)
treed7370870e12f5dc2b4bf2a35858723c0d0c9c030 /builtin-send-pack.c
parent71a5099b647267d509e43f2c41483ca79af49d9f (diff)
downloadgit-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.c2
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)) {