mirror of
https://git.proxmox.com/git/libgit2
synced 2025-05-20 20:23:26 +00:00
"Uninitialized" submodules are "unmodified"
Extend the "unmodified" submodule workdir test to include uninitialized submodules, to prevent reporting submodules as modified when they're not in the workdir at all.
This commit is contained in:
parent
d62bf0bf83
commit
b554ca5dc1
@ -97,7 +97,8 @@ typedef enum {
|
||||
(((S) & GIT_SUBMODULE_STATUS__INDEX_FLAGS) == 0)
|
||||
|
||||
#define GIT_SUBMODULE_STATUS_IS_WD_UNMODIFIED(S) \
|
||||
(((S) & GIT_SUBMODULE_STATUS__WD_FLAGS) == 0)
|
||||
(((S) & (GIT_SUBMODULE_STATUS__WD_FLAGS & \
|
||||
~GIT_SUBMODULE_STATUS_WD_UNINITIALIZED)) == 0)
|
||||
|
||||
#define GIT_SUBMODULE_STATUS_IS_WD_DIRTY(S) \
|
||||
(((S) & (GIT_SUBMODULE_STATUS_WD_INDEX_MODIFIED | \
|
||||
|
@ -221,3 +221,20 @@ void test_status_submodules__dirty_workdir_only(void)
|
||||
git_status_foreach_ext(g_repo, &opts, cb_status__match, &counts));
|
||||
cl_assert_equal_i(6, counts.entry_count);
|
||||
}
|
||||
|
||||
void test_status_submodules__uninitialized(void)
|
||||
{
|
||||
git_repository *cloned_repo;
|
||||
git_status_list *statuslist;
|
||||
|
||||
g_repo = cl_git_sandbox_init("submod2");
|
||||
|
||||
cl_git_pass(git_clone(&cloned_repo, "submod2", "submod2-clone", NULL));
|
||||
|
||||
cl_git_pass(git_status_list_new(&statuslist, cloned_repo, NULL));
|
||||
cl_assert_equal_i(0, git_status_list_entrycount(statuslist));
|
||||
|
||||
git_status_list_free(statuslist);
|
||||
git_repository_free(cloned_repo);
|
||||
cl_git_sandbox_cleanup();
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user