git-commit-vandalism/compat
Johannes Sixt 9374919442 Thread-safe xmalloc and xrealloc needs a recursive mutex
The mutex used to protect object access (read_mutex) may need to be
acquired recursively.  Introduce init_recursive_mutex() helper function
in thread-utils.c that constructs a mutex with the PHREAD_MUTEX_RECURSIVE
attribute.

pthread_mutex_init() emulation on Win32 is already recursive as it is
implemented on top of the CRITICAL_SECTION type, which is recursive.

    http://msdn.microsoft.com/en-us/library/ms682530%28VS.85%29.aspx

Add do-nothing compatibility wrappers for pthread_mutexattr* functions.

Initial-version-by: Fredrik Kuivinen <frekui@gmail.com>
Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2010-04-08 23:06:39 -07:00
..
fnmatch Fix more typos/spelling in comments 2009-04-22 19:03:39 -07:00
nedmalloc Fix typo in nedmalloc warning fix 2009-06-11 14:18:52 -07:00
regex msvc: Fix a compiler warning due to an incorrect pointer cast 2010-01-22 16:15:16 -08:00
vcbuild msvc: Fix an "unrecognized option" linker warning 2010-01-22 16:15:14 -08:00
win32 Thread-safe xmalloc and xrealloc needs a recursive mutex 2010-04-08 23:06:39 -07:00
basename.c compat: add a basename() compatibility function 2009-05-31 17:57:59 -07:00
bswap.h Explicitly truncate bswap operand to uint32_t 2009-11-25 00:16:38 -08:00
cygwin.c Fix more typos/spelling in comments 2009-04-22 19:03:39 -07:00
cygwin.h cygwin: Use native Win32 API for stat 2008-09-30 14:30:06 -07:00
fopen.c compat/fopen.c: avoid clobbering the system defined fopen macro 2008-05-08 17:43:01 -07:00
hstrerror.c Add a local implementation of hstrerror for the system which do not have it 2007-06-15 22:48:34 -07:00
inet_ntop.c Remove a couple of duplicated include 2007-11-05 20:50:38 -08:00
inet_pton.c Remove a couple of duplicated include 2007-11-05 20:50:38 -08:00
memmem.c optimize compat/ memmem() 2009-03-02 18:28:06 -08:00
mingw.c Do not use date.c:tm_to_time_t() from compat/mingw.c 2010-01-16 18:16:13 -08:00
mingw.h MSVC: Windows-native implementation for subset of Pthreads API 2010-01-16 18:16:06 -08:00
mkdtemp.c Fix gitmkdtemp: correct test for mktemp() return value 2010-02-25 12:08:22 -08:00
mmap.c War on whitespace 2007-06-07 00:04:01 -07:00
msvc.c Add platform files for porting to MSVC 2009-09-18 20:00:42 -07:00
msvc.h MSVC: Fix an "incompatible pointer types" compiler warning 2010-01-16 16:43:55 -08:00
pread.c Replacing the system call pread() with lseek()/xread()/lseek() sequence. 2007-01-09 16:40:40 -08:00
qsort.c compat: Add simplified merge sort implementation from glibc 2008-02-06 22:35:28 -08:00
setenv.c simplify inclusion of system header files. 2006-12-20 09:51:35 -08:00
snprintf.c Test for WIN32 instead of __MINGW32_ 2009-09-18 20:00:42 -07:00
strcasestr.c Clean up compatibility definitions. 2005-12-05 15:50:29 -08:00
strlcpy.c simplify inclusion of system header files. 2006-12-20 09:51:35 -08:00
strtoumax.c Add a compat/strtoumax.c for Solaris 8. 2007-02-19 18:20:30 -08:00
unsetenv.c simplify inclusion of system header files. 2006-12-20 09:51:35 -08:00
win32.h Make usage of windows.h lean and mean 2009-09-18 20:00:42 -07:00
win32mmap.c MSVC: Add support for building with NO_MMAP 2009-11-08 17:59:12 -08:00
winansi.c Make usage of windows.h lean and mean 2009-09-18 20:00:42 -07:00