summaryrefslogtreecommitdiff
path: root/src/repository.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/repository.c')
-rw-r--r--src/repository.c19
1 files changed, 1 insertions, 18 deletions
diff --git a/src/repository.c b/src/repository.c
index 18881ecce..572b51622 100644
--- a/src/repository.c
+++ b/src/repository.c
@@ -772,24 +772,7 @@ int git_repository_head_detached(git_repository *repo)
int git_repository_head(git_reference **head_out, git_repository *repo)
{
- git_reference *ref, *resolved_ref;
- int error;
-
- *head_out = NULL;
-
- error = git_reference_lookup(&ref, repo, GIT_HEAD_FILE);
- if (error < 0)
- return error;
-
- error = git_reference_resolve(&resolved_ref, ref);
- if (error < 0) {
- git_reference_free(ref);
- return error;
- }
-
- git_reference_free(ref);
- *head_out = resolved_ref;
- return 0;
+ return git_reference_lookup_resolved(head_out, repo, GIT_HEAD_FILE, -1);
}
int git_repository_head_orphan(git_repository *repo)