summary | shortlog | log | commit | commitdiff | tree
raw | patch | inline | side by side (parent: 8313374)
raw | patch | inline | side by side (parent: 8313374)
author | Junio C Hamano <gitster@pobox.com> | |
Fri, 29 Aug 2008 17:12:23 +0000 (10:12 -0700) | ||
committer | Junio C Hamano <gitster@pobox.com> | |
Sun, 31 Aug 2008 02:41:43 +0000 (19:41 -0700) |
These hardcoded integers make the code harder to follow than necessary;
replace them with enums to make it easier to read, before adding support
for optionally parsing "diff3 -m" style conflict markers.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
replace them with enums to make it easier to read, before adding support
for optionally parsing "diff3 -m" style conflict markers.
Signed-off-by: Junio C Hamano <gitster@pobox.com>
rerere.c | patch | blob | history |
diff --git a/rerere.c b/rerere.c
index 323e493dafee46c0d3f95e3c4cd9c4c9b463bbef..bf74b262f0cc232ba118d34dd7676ce67d3a1d9e 100644 (file)
--- a/rerere.c
+++ b/rerere.c
{
SHA_CTX ctx;
char buf[1024];
- int hunk = 0, hunk_no = 0;
+ int hunk_no = 0;
+ enum {
+ RR_CONTEXT = 0, RR_SIDE_1, RR_SIDE_2,
+ } hunk = RR_CONTEXT;
struct strbuf one, two;
FILE *f = fopen(path, "r");
FILE *out = NULL;
strbuf_init(&two, 0);
while (fgets(buf, sizeof(buf), f)) {
if (!prefixcmp(buf, "<<<<<<< ")) {
- if (hunk)
+ if (hunk != RR_CONTEXT)
goto bad;
- hunk = 1;
+ hunk = RR_SIDE_1;
} else if (!prefixcmp(buf, "=======") && isspace(buf[7])) {
- if (hunk != 1)
+ if (hunk != RR_SIDE_1)
goto bad;
- hunk = 2;
+ hunk = RR_SIDE_2;
} else if (!prefixcmp(buf, ">>>>>>> ")) {
- if (hunk != 2)
+ if (hunk != RR_SIDE_2)
goto bad;
if (strbuf_cmp(&one, &two) > 0)
strbuf_swap(&one, &two);
hunk_no++;
- hunk = 0;
+ hunk = RR_CONTEXT;
if (out) {
fputs("<<<<<<<\n", out);
fwrite(one.buf, one.len, 1, out);
}
strbuf_reset(&one);
strbuf_reset(&two);
- } else if (hunk == 1)
+ } else if (hunk == RR_SIDE_1)
strbuf_addstr(&one, buf);
- else if (hunk == 2)
+ else if (hunk == RR_SIDE_2)
strbuf_addstr(&two, buf);
else if (out)
fputs(buf, out);
fclose(out);
if (sha1)
SHA1_Final(sha1, &ctx);
- if (hunk) {
+ if (hunk != RR_CONTEXT) {
if (output)
unlink(output);
return error("Could not parse conflict hunks in %s", path);