mirror of
https://git.proxmox.com/git/libgit2
synced 2025-07-05 17:04:15 +00:00
Improve error propagation in shallow call
This commit is contained in:
parent
e0ebaaa53e
commit
9bda5fb8c1
@ -2001,9 +2001,10 @@ int git_repository_is_shallow(git_repository *repo)
|
||||
error = git_path_lstat(path.ptr, &st);
|
||||
git_buf_free(&path);
|
||||
|
||||
if (error == GIT_ENOTFOUND)
|
||||
if (error == GIT_ENOTFOUND) {
|
||||
giterr_clear();
|
||||
return 0;
|
||||
if (error < 0)
|
||||
return -1;
|
||||
return st.st_size == 0 ? 0 : 1;
|
||||
}
|
||||
|
||||
return error < 0 ? error : st.st_size == 0 ? 0 : 1;
|
||||
}
|
||||
|
@ -31,3 +31,9 @@ void test_repo_shallow__shallow_repo(void)
|
||||
cl_assert_equal_i(1, git_repository_is_shallow(g_repo));
|
||||
}
|
||||
|
||||
void test_repo_shallow__clears_errors(void)
|
||||
{
|
||||
g_repo = cl_git_sandbox_init("testrepo.git");
|
||||
cl_assert_equal_i(0, git_repository_is_shallow(g_repo));
|
||||
cl_assert_equal_p(NULL, giterr_last());
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user