cygwin: trust executable bit by default
authorJunio C Hamano <gitster@pobox.com>
Mon, 20 Jun 2011 19:31:59 +0000 (12:31 -0700)
committerJunio C Hamano <gitster@pobox.com>
Mon, 20 Jun 2011 20:09:04 +0000 (13:09 -0700)
Earlier 7974843 (compat/cygwin.c: make runtime detection of lstat/stat
lessor impact, 2008-10-23) fixed the low-level "do we use cygwin specific
hacks for stat/lstat?" logic not to call into git_default_config() from
random codepaths that are typically very late in the program, to prevent
the call from potentially overwriting other variables that are initialized
from the configuration.

However, it forgot that on Cygwin, trust-executable-bit should default to
true.

Noticed by J6t, confirmed by Ramsay Jones, and the brown paper bag is on
Gitster's head.

Signed-off-by: Junio C Hamano <gitster@pobox.com>
compat/cygwin.c

index b4a51b958c5651d3b509013aaef0c4e30b68a816..ba3327f1f96922c91a4e3f0094c0fa10cde0301e 100644 (file)
@@ -101,7 +101,7 @@ static int cygwin_stat(const char *path, struct stat *buf)
  * 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)
 {