Merged pull request #139 from jpfender/merge-head-file.

refs: Allow MERGE_HEAD in normalize_name()
This commit is contained in:
Vicent Martí 2011-04-23 14:36:01 -07:00
commit 7df49e9e5f
2 changed files with 4 additions and 2 deletions

View File

@ -1692,8 +1692,9 @@ static int normalize_name(char *buffer_out, const char *name, int is_oid_ref)
} }
/* Object id refname have to contain at least one slash, except /* Object id refname have to contain at least one slash, except
* for HEAD in a detached state */ * for HEAD in a detached state or MERGE_HEAD if we're in the
if (is_oid_ref && !contains_a_slash && strcmp(name, GIT_HEAD_FILE)) * middle of a merge */
if (is_oid_ref && !contains_a_slash && (strcmp(name, GIT_HEAD_FILE) && strcmp(name, GIT_MERGE_HEAD_FILE)))
return GIT_EINVALIDREFNAME; return GIT_EINVALIDREFNAME;
/* A refname can not end with ".lock" */ /* A refname can not end with ".lock" */

View File

@ -17,6 +17,7 @@
#define MAX_GITDIR_TREE_STRUCTURE_PATH_LENGTH 100 #define MAX_GITDIR_TREE_STRUCTURE_PATH_LENGTH 100
#define GIT_HEAD_FILE "HEAD" #define GIT_HEAD_FILE "HEAD"
#define GIT_MERGE_HEAD_FILE "MERGE_HEAD"
#define GIT_REFS_HEADS_MASTER_FILE GIT_REFS_HEADS_DIR "master" #define GIT_REFS_HEADS_MASTER_FILE GIT_REFS_HEADS_DIR "master"
struct git_reference { struct git_reference {