diff options
| author | Edward Thomson <ethomson@edwardthomson.com> | 2020-10-11 13:20:52 +0100 |
|---|---|---|
| committer | Edward Thomson <ethomson@edwardthomson.com> | 2020-10-25 16:33:27 +0000 |
| commit | b52bb4d4b2548d0c7f00de0eab5073cc8fe9e899 (patch) | |
| tree | 89b5bc95613013bc79e922ad7de85135dbcbd534 /src/refs.c | |
| parent | 29715d4082ef97d54ce2bf24943425f558335796 (diff) | |
| download | libgit2-b52bb4d4b2548d0c7f00de0eab5073cc8fe9e899.tar.gz | |
refs: use git_reference_name_is_valid
Diffstat (limited to 'src/refs.c')
| -rw-r--r-- | src/refs.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/src/refs.c b/src/refs.c index da12d02f2..90b9b06ff 100644 --- a/src/refs.c +++ b/src/refs.c @@ -239,7 +239,7 @@ int git_reference_lookup_resolved( int git_reference_dwim(git_reference **out, git_repository *repo, const char *refname) { - int error = 0, i; + int error = 0, i, valid; bool fallbackmode = true, foundvalid = false; git_reference *ref; git_buf refnamebuf = GIT_BUF_INIT, name = GIT_BUF_INIT; @@ -265,10 +265,11 @@ int git_reference_dwim(git_reference **out, git_repository *repo, const char *re git_buf_clear(&refnamebuf); - if ((error = git_buf_printf(&refnamebuf, formatters[i], git_buf_cstr(&name))) < 0) + if ((error = git_buf_printf(&refnamebuf, formatters[i], git_buf_cstr(&name))) < 0 || + (error = git_reference_name_is_valid(&valid, git_buf_cstr(&refnamebuf))) < 0) goto cleanup; - if (!git_reference_is_valid_name(git_buf_cstr(&refnamebuf))) { + if (!valid) { error = GIT_EINVALIDSPEC; continue; } |
