Commit 7b24c4fd by Patrick Steinhardt

checkout: set ignorecase=0 when config lookup fails

When `git_repository__cvar` fails we may end up with a
`ignorecase` value of `-1`. As we subsequently check if
`ignorecase` is non-zero, we may end up reporting that data
should be removed when in fact it should not.

Err on the safer side and set `ignorecase = 0` when
`git_repository__cvar` fails.
parent fcd1b786
...@@ -1360,9 +1360,11 @@ fail: ...@@ -1360,9 +1360,11 @@ fail:
static bool should_remove_existing(checkout_data *data) static bool should_remove_existing(checkout_data *data)
{ {
int ignorecase = 0; int ignorecase;
git_repository__cvar(&ignorecase, data->repo, GIT_CVAR_IGNORECASE); if (git_repository__cvar(&ignorecase, data->repo, GIT_CVAR_IGNORECASE) < 0) {
ignorecase = 0;
}
return (ignorecase && return (ignorecase &&
(data->strategy & GIT_CHECKOUT_DONT_REMOVE_EXISTING) == 0); (data->strategy & GIT_CHECKOUT_DONT_REMOVE_EXISTING) == 0);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment