refs: deploy git_reference_has_log()

This commit is contained in:
nulltoken 2012-07-04 12:20:43 +02:00
parent 75261421ec
commit 33c3370700
2 changed files with 5 additions and 9 deletions

View File

@ -53,6 +53,8 @@ GIT_EXTERN(int) git_reflog_write(git_reference *ref, const git_oid *oid_old, con
/**
* Rename the reflog for the given reference
*
* The reflog to be renamed is expected to already exist
*
* @param ref the reference
* @param new_name the new name of the reference
* @return 0 or an error code

View File

@ -1404,18 +1404,12 @@ int git_reference_rename(git_reference *ref, const char *new_name, int force)
}
/*
* Rename the reflog file.
* Rename the reflog file, if it exists.
*/
git_buf_clear(&aux_path);
if (git_buf_join_n(&aux_path, '/', 3, ref->owner->path_repository, GIT_REFLOG_DIR, ref->name) < 0)
if ((git_reference_has_log(ref)) && (git_reflog_rename(ref, new_name) < 0))
goto cleanup;
if (git_path_exists(aux_path.ptr) == true) {
if (git_reflog_rename(ref, new_name) < 0)
goto cleanup;
} else {
giterr_clear();
}
/*
* Change the name of the reference given by the user.