Fix issue483 - mq does not work under windows with gnu-win32 patch.

Add --binary option to patch command under win32.
This commit is contained in:
Patrick Mezard 2007-05-12 21:09:29 +02:00
parent 1c67345a13
commit 37afbaec09
2 changed files with 7 additions and 0 deletions

View File

@ -296,6 +296,9 @@ def patch(patchname, ui, strip=1, cwd=None, files={}):
patcher = util.find_in_path('gpatch', os.environ.get('PATH', ''),
'patch')
args = []
if util.needbinarypatch():
args.append('--binary')
if cwd:
args.append('-d %s' % util.shellquote(cwd))
fp = os.popen('%s %s -p%d < %s' % (patcher, ' '.join(args), strip,

View File

@ -793,6 +793,10 @@ def linkfunc(path, fallback):
_umask = os.umask(0)
os.umask(_umask)
def needbinarypatch():
"""return True if patches should be applied in binary mode by default."""
return os.name == 'nt'
# Platform specific variants
if os.name == 'nt':
import msvcrt