version 1.19, 2006/03/16 08:32:34 |
version 1.20, 2006/03/25 21:29:59 |
|
|
static char *getchange(FILE *); |
static char *getchange(FILE *); |
static char *getline(FILE *, size_t *); |
static char *getline(FILE *, size_t *); |
static int number(char **); |
static int number(char **); |
static int readin(char *, struct diff **); |
static size_t readin(char *, struct diff **); |
static int skip(int, int, char *); |
static int skip(int, int, char *); |
static int edscript(int); |
static int edscript(int); |
static int merge(int, int); |
static int merge(size_t, size_t); |
static void change(int, struct range *, int); |
static void change(int, struct range *, int); |
static void keep(int, struct range *); |
static void keep(int, struct range *); |
static void prange(struct range *); |
static void prange(struct range *); |
|
|
static int |
static int |
diff3_internal(int argc, char **argv, const char *fmark, const char *rmark) |
diff3_internal(int argc, char **argv, const char *fmark, const char *rmark) |
{ |
{ |
int i, m, n; |
size_t m, n; |
|
int i; |
|
|
/* XXX */ |
/* XXX */ |
eflag = 3; |
eflag = 3; |
|
|
* since the vector is processed in one sequential pass. |
* since the vector is processed in one sequential pass. |
* The vector could be optimized out of existence) |
* The vector could be optimized out of existence) |
*/ |
*/ |
static int |
static size_t |
readin(char *name, struct diff **dd) |
readin(char *name, struct diff **dd) |
{ |
{ |
int a, b, c, d; |
int a, b, c, d; |
|
|
} |
} |
|
|
static int |
static int |
merge(int m1, int m2) |
merge(size_t m1, size_t m2) |
{ |
{ |
struct diff *d1, *d2, *d3; |
struct diff *d1, *d2, *d3; |
int dpl, j, t1, t2; |
int dpl, j, t1, t2; |
|
|
while ((t1 = d1 < d13 + m1) | (t2 = d2 < d23 + m2)) { |
while ((t1 = d1 < d13 + m1) | (t2 = d2 < d23 + m2)) { |
if (debug) { |
if (debug) { |
printf("%d,%d=%d,%d %d,%d=%d,%d\n", |
printf("%d,%d=%d,%d %d,%d=%d,%d\n", |
d1->old.from,d1->old.to, |
d1->old.from, d1->old.to, |
d1->new.from,d1->new.to, |
d1->new.from, d1->new.to, |
d2->old.from,d2->old.to, |
d2->old.from, d2->old.to, |
d2->new.from,d2->new.to); |
d2->new.from, d2->new.to); |
} |
} |
|
|
/* first file is different from others */ |
/* first file is different from others */ |