diff options
| author | Carlos Martín Nieto <cmn@dwim.me> | 2013-04-28 14:16:45 +0200 |
|---|---|---|
| committer | Carlos Martín Nieto <cmn@dwim.me> | 2013-04-28 14:21:10 +0200 |
| commit | 528a4e24c6671d621847cf8e3121e3c56fe20d3b (patch) | |
| tree | 254aebe6ad284ebb3d2403ac258850c8382c72c2 /src | |
| parent | 78bf2944ed0512f38dfcb56f590373a904ca29c0 (diff) | |
| download | libgit2-528a4e24c6671d621847cf8e3121e3c56fe20d3b.tar.gz | |
Parse shorthand refspecs as valid
Relax the ONELEVEL ref naming rules so the refspec parsing code can
ask for 'master' to be considered valid.
Diffstat (limited to 'src')
| -rw-r--r-- | src/refs.c | 1 | ||||
| -rw-r--r-- | src/refspec.c | 2 |
2 files changed, 2 insertions, 1 deletions
diff --git a/src/refs.c b/src/refs.c index 9c6684a5a..2faa4cb83 100644 --- a/src/refs.c +++ b/src/refs.c @@ -752,6 +752,7 @@ int git_reference__normalize_name( goto cleanup; if ((segments_count == 1 ) && + !(flags & GIT_REF_FORMAT_REFSPEC_SHORTHAND) && !(is_all_caps_and_underscore(name, (size_t)segment_len) || ((flags & GIT_REF_FORMAT_REFSPEC_PATTERN) && !strcmp("*", name)))) goto cleanup; diff --git a/src/refspec.c b/src/refspec.c index fbdea9d93..256540819 100644 --- a/src/refspec.c +++ b/src/refspec.c @@ -60,7 +60,7 @@ int git_refspec__parse(git_refspec *refspec, const char *input, bool is_fetch) refspec->pattern = is_glob; refspec->src = git__strndup(lhs, llen); - flags = GIT_REF_FORMAT_ALLOW_ONELEVEL + flags = GIT_REF_FORMAT_ALLOW_ONELEVEL | GIT_REF_FORMAT_REFSPEC_SHORTHAND | (is_glob ? GIT_REF_FORMAT_REFSPEC_PATTERN : 0); if (is_fetch) { |
