git/compat
Johannes Sixt 3aea1a5a89 MinGW: Quote arguments for subprocesses that contain a single-quote
Before a process can be spawned by mingw_spawnve, arguments must be
surrounded by double-quotes if special characters are present.  This is
necessary because the startup code of the spawned process will expand
arguments that look like glob patterns.  "Normal" Windows command line
utilities expand only * and ?, but MSYS programs, including bash, are
different: They also expand braces, and this has already been taken care
of by compat/mingw.c:quote_arg().

But MSYS programs also treat single-quotes in a special way: Arguments
between single-quotes are spliced together (with spaces) into a word.
With this patch this treatment is avoided by quoting arguments that contain
single-quotes.

This lets t4252 pass on Windows.

Signed-off-by: Johannes Sixt <j6t@kdbg.org>
Signed-off-by: Junio C Hamano <gitster@pobox.com>
2009-03-24 14:42:59 -07:00
..
fnmatch Use compatibility regex library for OSX/Darwin 2008-09-10 13:36:40 -07:00
regex Use compatibility regex library for OSX/Darwin 2008-09-10 13:36:40 -07:00
cygwin.c compat/cygwin.c: make runtime detection of lstat/stat lessor impact 2008-10-28 09:12:49 -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 MinGW: Quote arguments for subprocesses that contain a single-quote 2009-03-24 14:42:59 -07:00
mingw.h MinGW: implement mmap 2009-03-18 19:23:04 -07:00
mkdtemp.c Define compat version of mkdtemp for systems lacking it 2007-10-20 22:52:21 -04:00
mmap.c War on whitespace 2007-06-07 00:04:01 -07: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 compat/snprintf.c: handle snprintf's that always return the # chars transmitted 2008-08-21 01:53:44 -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 mingw: move common functionality to win32.h 2008-09-30 14:30:06 -07:00
win32mmap.c MinGW: implement mmap 2009-03-18 19:23:04 -07:00
winansi.c winansi: support ESC [ K (erase in line) 2009-03-10 23:23:02 -07:00