mirror of
https://git.proxmox.com/git/libgit2
synced 2025-06-24 23:26:01 +00:00
49 lines
1.2 KiB
C
49 lines
1.2 KiB
C
/*
|
|
* Copyright (C) 2009-2012 the libgit2 contributors
|
|
*
|
|
* This file is part of libgit2, distributed under the GNU GPL v2 with
|
|
* a Linking Exception. For full terms see the included COPYING file.
|
|
*/
|
|
|
|
#include "repository.h"
|
|
#include "buffer.h"
|
|
#include "merge.h"
|
|
#include "refs.h"
|
|
#include "git2/repository.h"
|
|
#include "git2/merge.h"
|
|
#include "git2/reset.h"
|
|
|
|
int git_merge__cleanup(git_repository *repo)
|
|
{
|
|
int error = 0;
|
|
git_buf merge_head_path = GIT_BUF_INIT,
|
|
merge_mode_path = GIT_BUF_INIT,
|
|
merge_msg_path = GIT_BUF_INIT;
|
|
|
|
assert(repo);
|
|
|
|
if (git_buf_joinpath(&merge_head_path, repo->path_repository, GIT_MERGE_HEAD_FILE) < 0 ||
|
|
git_buf_joinpath(&merge_mode_path, repo->path_repository, GIT_MERGE_MODE_FILE) < 0 ||
|
|
git_buf_joinpath(&merge_mode_path, repo->path_repository, GIT_MERGE_MODE_FILE) < 0)
|
|
return -1;
|
|
|
|
if (git_path_isfile(merge_head_path.ptr)) {
|
|
if ((error = p_unlink(merge_head_path.ptr)) < 0)
|
|
goto cleanup;
|
|
}
|
|
|
|
if (git_path_isfile(merge_mode_path.ptr))
|
|
(void)p_unlink(merge_mode_path.ptr);
|
|
|
|
if (git_path_isfile(merge_msg_path.ptr))
|
|
(void)p_unlink(merge_msg_path.ptr);
|
|
|
|
cleanup:
|
|
git_buf_free(&merge_msg_path);
|
|
git_buf_free(&merge_mode_path);
|
|
git_buf_free(&merge_head_path);
|
|
|
|
return error;
|
|
}
|
|
|