X-Git-Url: https://git.octo.it/?a=blobdiff_plain;f=refs.c;h=c33729c54a001423fb682cc920b72e5b1d03f8ea;hb=f8f9c73c7d835ec1e5b665c66623aed49fcd4888;hp=69858e48cbb036d382408678434051628e290e5b;hpb=06bf6ac4248e834a229027908d405f5e42ac96d7;p=git.git diff --git a/refs.c b/refs.c index 69858e48..c33729c5 100644 --- a/refs.c +++ b/refs.c @@ -313,7 +313,9 @@ int write_ref_sha1(const char *ref, int fd, const unsigned char *sha1) static inline int bad_ref_char(int ch) { return (((unsigned) ch) <= ' ' || - ch == '~' || ch == '^' || ch == ':'); + ch == '~' || ch == '^' || ch == ':' || + /* 2.13 Pattern Matching Notation */ + ch == '?' || ch == '*' || ch == '['); } int check_ref_format(const char *ref) @@ -345,14 +347,6 @@ int check_ref_format(const char *ref) if (!ch) { if (level < 2) return -1; /* at least of form "heads/blah" */ - - /* Do not allow ref name to end in "HEAD" - * Note that cp is poiting at one past NUL at the end. - * i.e. cp[-1] = NUL. - */ - if (5 <= cp - ref && !strcmp(cp - 5, "HEAD")) - return -1; - return 0; } }