Skip to content

Commit 12d81ce

Browse files
author
Junio C Hamano
committed
Merge branch 'fix'
* fix: diff_flush(): leakfix. parse_date(): fix parsing 03/10/2006
2 parents 42277bc + 7d6c447 commit 12d81ce

File tree

2 files changed

+27
-21
lines changed

2 files changed

+27
-21
lines changed

date.c

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -255,10 +255,10 @@ static int match_multi_number(unsigned long num, char c, const char *date, char
255255
break;
256256
}
257257
/* mm/dd/yy ? */
258-
if (is_date(num3, num2, num, tm))
258+
if (is_date(num3, num, num2, tm))
259259
break;
260260
/* dd/mm/yy ? */
261-
if (is_date(num3, num, num2, tm))
261+
if (is_date(num3, num2, num, tm))
262262
break;
263263
return 0;
264264
}

diff.c

Lines changed: 25 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -1280,28 +1280,34 @@ void diff_flush(struct diff_options *options)
12801280

12811281
for (i = 0; i < q->nr; i++) {
12821282
struct diff_filepair *p = q->queue[i];
1283-
if ((diff_output_format == DIFF_FORMAT_NO_OUTPUT) ||
1284-
(p->status == DIFF_STATUS_UNKNOWN))
1285-
continue;
1286-
if (p->status == 0)
1287-
die("internal error in diff-resolve-rename-copy");
1288-
switch (diff_output_format) {
1289-
case DIFF_FORMAT_PATCH:
1290-
diff_flush_patch(p, options);
1291-
break;
1292-
case DIFF_FORMAT_RAW:
1293-
case DIFF_FORMAT_NAME_STATUS:
1294-
diff_flush_raw(p, line_termination,
1295-
inter_name_termination,
1296-
options);
1283+
1284+
switch (p->status) {
1285+
case DIFF_STATUS_UNKNOWN:
12971286
break;
1298-
case DIFF_FORMAT_NAME:
1299-
diff_flush_name(p,
1300-
inter_name_termination,
1301-
line_termination);
1287+
case 0:
1288+
die("internal error in diff-resolve-rename-copy");
13021289
break;
1290+
default:
1291+
switch (diff_output_format) {
1292+
case DIFF_FORMAT_PATCH:
1293+
diff_flush_patch(p, options);
1294+
break;
1295+
case DIFF_FORMAT_RAW:
1296+
case DIFF_FORMAT_NAME_STATUS:
1297+
diff_flush_raw(p, line_termination,
1298+
inter_name_termination,
1299+
options);
1300+
break;
1301+
case DIFF_FORMAT_NAME:
1302+
diff_flush_name(p,
1303+
inter_name_termination,
1304+
line_termination);
1305+
break;
1306+
case DIFF_FORMAT_NO_OUTPUT:
1307+
break;
1308+
}
13031309
}
1304-
diff_free_filepair(q->queue[i]);
1310+
diff_free_filepair(p);
13051311
}
13061312
free(q->queue);
13071313
q->queue = NULL;

0 commit comments

Comments
 (0)