diff --git a/compat/cygwin.c b/compat/cygwin.c
index b4a51b958c5651d3b509013aaef0c4e30b68a816..dfe9b3084ffbfd6c41a648e32a1857e78b566215 100644 (file)
--- a/compat/cygwin.c
+++ b/compat/cygwin.c
* and calling git_default_config() from here would break such variables.
*/
static int native_stat = 1;
-static int core_filemode;
+static int core_filemode = 1; /* matches trust_executable_bit default */
static int git_cygwin_config(const char *var, const char *value, void *cb)
{
static int init_stat(void)
{
- if (have_git_dir()) {
- git_config(git_cygwin_config, NULL);
+ if (have_git_dir() && git_config(git_cygwin_config,NULL)) {
if (!core_filemode && native_stat) {
cygwin_stat_fn = cygwin_stat;
cygwin_lstat_fn = cygwin_lstat;