@@ -199,11 +199,11 @@ class Diff(object):
199
199
re_header = re .compile (r"""
200
200
^diff[ ]--git
201
201
[ ](?:a/)?(?P<a_path_fallback>.+?)[ ](?:b/)?(?P<b_path_fallback>.+?)\n
202
+ (?:^old[ ]mode[ ](?P<old_mode>\d+)\n
203
+ ^new[ ]mode[ ](?P<new_mode>\d+)(?:\n|$))?
202
204
(?:^similarity[ ]index[ ]\d+%\n
203
205
^rename[ ]from[ ](?P<rename_from>.*)\n
204
206
^rename[ ]to[ ](?P<rename_to>.*)(?:\n|$))?
205
- (?:^old[ ]mode[ ](?P<old_mode>\d+)\n
206
- ^new[ ]mode[ ](?P<new_mode>\d+)(?:\n|$))?
207
207
(?:^new[ ]file[ ]mode[ ](?P<new_file_mode>.+)(?:\n|$))?
208
208
(?:^deleted[ ]file[ ]mode[ ](?P<deleted_file_mode>.+)(?:\n|$))?
209
209
(?:^index[ ](?P<a_blob_id>[0-9A-Fa-f]+)
@@ -331,8 +331,9 @@ def _index_from_patch_format(cls, repo, stream):
331
331
previous_header = None
332
332
for header in cls .re_header .finditer (text ):
333
333
a_path_fallback , b_path_fallback , \
334
+ old_mode , new_mode , \
334
335
rename_from , rename_to , \
335
- old_mode , new_mode , new_file_mode , deleted_file_mode , \
336
+ new_file_mode , deleted_file_mode , \
336
337
a_blob_id , b_blob_id , b_mode , \
337
338
a_path , b_path = header .groups ()
338
339
new_file , deleted_file = bool (new_file_mode ), bool (deleted_file_mode )
0 commit comments