diff options
author | Ramsay Jones <ramsay@ramsay1.demon.co.uk> | 2012-04-17 19:00:04 +0100 |
---|---|---|
committer | Junio C Hamano <gitster@pobox.com> | 2012-04-18 13:00:57 -0700 |
commit | 90110d7645e5035ea59bc5c72fac4e11ad55a6ef (patch) | |
tree | 166ec49e460365bedf144260fc159fe1863c8492 /compat | |
parent | e8dde3e5f9ddb7cf95a6ff3cea6cf07c3a2db80d (diff) | |
download | git-90110d7645e5035ea59bc5c72fac4e11ad55a6ef.tar.gz git-90110d7645e5035ea59bc5c72fac4e11ad55a6ef.tar.xz |
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.h | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/compat/mingw.h b/compat/mingw.h index 0ff1e0481..dcd1f6b58 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 |