summaryrefslogtreecommitdiff
path: root/compat
diff options
context:
space:
mode:
authorRamsay Jones <ramsay@ramsay1.demon.co.uk>2012-04-17 18:00:04 (GMT)
committerJunio C Hamano <gitster@pobox.com>2012-04-18 20:00:57 (GMT)
commit90110d7645e5035ea59bc5c72fac4e11ad55a6ef (patch)
tree166ec49e460365bedf144260fc159fe1863c8492 /compat
parente8dde3e5f9ddb7cf95a6ff3cea6cf07c3a2db80d (diff)
downloadgit-90110d7645e5035ea59bc5c72fac4e11ad55a6ef.zip
git-90110d7645e5035ea59bc5c72fac4e11ad55a6ef.tar.gz
git-90110d7645e5035ea59bc5c72fac4e11ad55a6ef.tar.bz2
compat/mingw.h: Set S_ISUID to prevent a fast-import test failure
The current t9300-fast-import.sh test number 62 ("L: nested tree copy does not corrupt deltas") was introduced in commit 9a0edb79 ("fast-import: add a test for tree delta base corruption", 15-08-2011). A fix for the demonstrated problem was introduced by commit 8fb3ad76 ("fast-import: prevent producing bad delta", 15-08-2011). However, this fix didn't work on MinGW and so this test has always failed on MinGW. Part of the solution in commit 8fb3ad76 was to add an NO_DELTA preprocessor constant which was defined as follows: +/* + * We abuse the setuid bit on directories to mean "do not delta". + */ +#define NO_DELTA S_ISUID + Unfortunately, the S_ISUID constant on MinGW is defined as zero. In order to fix the problem, we simply alter the definition of S_ISUID in the mingw header file to a more appropriate value. Also, we take the opportunity to similarly define S_ISGID and S_ISVTX. Signed-off-by: Ramsay Jones <ramsay@ramsay1.demon.co.uk> Signed-off-by: Junio C Hamano <gitster@pobox.com>
Diffstat (limited to 'compat')
-rw-r--r--compat/mingw.h7
1 files changed, 4 insertions, 3 deletions
diff --git a/compat/mingw.h b/compat/mingw.h
index 0ff1e04..dcd1f6b 100644
--- a/compat/mingw.h
+++ b/compat/mingw.h
@@ -22,9 +22,10 @@ typedef int socklen_t;
#define S_IWOTH 0
#define S_IXOTH 0
#define S_IRWXO (S_IROTH | S_IWOTH | S_IXOTH)
-#define S_ISUID 0
-#define S_ISGID 0
-#define S_ISVTX 0
+
+#define S_ISUID 0004000
+#define S_ISGID 0002000
+#define S_ISVTX 0001000
#define WIFEXITED(x) 1
#define WIFSIGNALED(x) 0