=================================================================== RCS file: /cvsrepo/anoncvs/cvs/src/usr.bin/cvs/diff3.c,v retrieving revision 1.35 retrieving revision 1.36 diff -u -r1.35 -r1.36 --- src/usr.bin/cvs/diff3.c 2007/02/22 06:42:09 1.35 +++ src/usr.bin/cvs/diff3.c 2007/05/29 00:19:10 1.36 @@ -1,4 +1,4 @@ -/* $OpenBSD: diff3.c,v 1.35 2007/02/22 06:42:09 otto Exp $ */ +/* $OpenBSD: diff3.c,v 1.36 2007/05/29 00:19:10 ray Exp $ */ /* * Copyright (C) Caldera International Inc. 2001-2002. @@ -72,7 +72,7 @@ #ifndef lint static const char rcsid[] = - "$OpenBSD: diff3.c,v 1.35 2007/02/22 06:42:09 otto Exp $"; + "$OpenBSD: diff3.c,v 1.36 2007/05/29 00:19:10 ray Exp $"; #endif /* not lint */ #include @@ -492,12 +492,10 @@ if (cp[len - 1] != '\n') len++; if (len + 1 > bufsize) { - char *newbuf; do { bufsize += 1024; } while (len + 1 > bufsize); - newbuf = xrealloc(buf, 1, bufsize); - buf = newbuf; + buf = xrealloc(buf, 1, bufsize); } memcpy(buf, cp, len - 1); buf[len - 1] = '\n'; @@ -789,25 +787,19 @@ static void increase(void) { - struct diff *p; - char *q; size_t newsz, incr; /* are the memset(3) calls needed? */ newsz = szchanges == 0 ? 64 : 2 * szchanges; incr = newsz - szchanges; - p = xrealloc(d13, newsz, sizeof(*d13)); - memset(p + szchanges, 0, incr * sizeof(*d13)); - d13 = p; - p = xrealloc(d23, newsz, sizeof(*d23)); - memset(p + szchanges, 0, incr * sizeof(*d23)); - d23 = p; - p = xrealloc(de, newsz, sizeof(*de)); - memset(p + szchanges, 0, incr * sizeof(*de)); - de = p; - q = xrealloc(overlap, newsz, sizeof(*overlap)); - memset(q + szchanges, 0, incr * sizeof(*overlap)); - overlap = q; + d13 = xrealloc(d13, newsz, sizeof(*d13)); + memset(d13 + szchanges, 0, incr * sizeof(*d13)); + d23 = xrealloc(d23, newsz, sizeof(*d23)); + memset(d23 + szchanges, 0, incr * sizeof(*d23)); + de = xrealloc(de, newsz, sizeof(*de)); + memset(de + szchanges, 0, incr * sizeof(*de)); + overlap = xrealloc(overlap, newsz, sizeof(*overlap)); + memset(overlap + szchanges, 0, incr * sizeof(*overlap)); szchanges = newsz; }