diff options
| author | nulltoken <emeric.fermas@gmail.com> | 2012-10-06 10:41:53 +0200 |
|---|---|---|
| committer | nulltoken <emeric.fermas@gmail.com> | 2012-10-07 21:03:51 +0200 |
| commit | 0c78f685ebeed293c666815b1668b8209f4ff258 (patch) | |
| tree | d762c9fe275bd821a65c5d453b4c6c4ca8bbd914 /src/branch.c | |
| parent | f3cc78340a7a0d2dab8a38c48fc80c6c36419450 (diff) | |
| download | libgit2-0c78f685ebeed293c666815b1668b8209f4ff258.tar.gz | |
branch: introduce git_branch_is_head()
Diffstat (limited to 'src/branch.c')
| -rw-r--r-- | src/branch.c | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/src/branch.c b/src/branch.c index 103dfe621..3cee956f0 100644 --- a/src/branch.c +++ b/src/branch.c @@ -271,3 +271,26 @@ cleanup: git_buf_free(&buf); return error; } + +int git_branch_is_head( + git_reference *branch) +{ + git_reference *head; + bool is_same = false; + + assert(branch); + + if (!git_reference_is_branch(branch)) + return false; + + if (git_repository_head(&head, git_reference_owner(branch)) < 0) + return -1; + + is_same = strcmp( + git_reference_name(branch), + git_reference_name(head)) == 0; + + git_reference_free(head); + + return is_same; +} |
