mercurial/commands.py
changeset 1193 04d1ca8ae9ec
parent 1192 6e165de907c5
child 1194 c165cbf56bb1
equal deleted inserted replaced
1192:6e165de907c5 1193:04d1ca8ae9ec
  1007             return 1
  1007             return 1
  1008 
  1008 
  1009     d = opts["base"]
  1009     d = opts["base"]
  1010     strip = opts["strip"]
  1010     strip = opts["strip"]
  1011 
  1011 
  1012     mailre = re.compile(r'(From |[\w-]+:)')
  1012     mailre = re.compile(r'(?:From |[\w-]+:)')
       
  1013     diffre = re.compile(r'(?:diff -|--- .*\s+\w+ \w+ +\d+ \d+:\d+:\d+ \d+)')
  1013 
  1014 
  1014     for patch in patches:
  1015     for patch in patches:
  1015         ui.status("applying %s\n" % patch)
  1016         ui.status("applying %s\n" % patch)
  1016         pf = os.path.join(d, patch)
  1017         pf = os.path.join(d, patch)
  1017 
  1018 
  1022             line = line.rstrip()
  1023             line = line.rstrip()
  1023             if not message and mailre.match(line) and not opts['mail_like']:
  1024             if not message and mailre.match(line) and not opts['mail_like']:
  1024                 if len(line) > 35: line = line[:32] + '...'
  1025                 if len(line) > 35: line = line[:32] + '...'
  1025                 raise util.Abort('first line looks like a '
  1026                 raise util.Abort('first line looks like a '
  1026                                  'mail header: ' + line)
  1027                                  'mail header: ' + line)
  1027             if line.startswith("--- ") or line.startswith("diff -r"):
  1028             if diffre.match(line):
  1028                 break
  1029                 break
  1029             elif hgpatch:
  1030             elif hgpatch:
  1030                 # parse values when importing the result of an hg export
  1031                 # parse values when importing the result of an hg export
  1031                 if line.startswith("# User "):
  1032                 if line.startswith("# User "):
  1032                     user = line[7:]
  1033                     user = line[7:]