summaryrefslogtreecommitdiff
path: root/src/join.c
diff options
context:
space:
mode:
authorJim Meyering <jim@meyering.net>2003-11-04 14:42:05 +0000
committerJim Meyering <jim@meyering.net>2003-11-04 14:42:05 +0000
commit62236f25e82b3b7f6f78df12791838ecd6a06db6 (patch)
tree1f5298170273dd57546c9e15368bcb99d3a75dc8 /src/join.c
parent6228ff86bd4ea7960bdae003cbe838a3e2d299a8 (diff)
downloadcoreutils-62236f25e82b3b7f6f78df12791838ecd6a06db6.tar.xz
(ADD_FIELD, initseq, getseq): Use x2nrealloc rather than xrealloc.
Diffstat (limited to 'src/join.c')
-rw-r--r--src/join.c16
1 files changed, 5 insertions, 11 deletions
diff --git a/src/join.c b/src/join.c
index 5b6ed31e7..47cc38f1e 100644
--- a/src/join.c
+++ b/src/join.c
@@ -187,10 +187,8 @@ ADD_FIELD (struct line *line, const unsigned char *field, size_t len)
{
if (line->nfields >= line->nfields_allocated)
{
- line->nfields_allocated = (3 * line->nfields_allocated) / 2 + 1;
- line->fields = xrealloc (line->fields,
- (line->nfields_allocated
- * sizeof (struct field)));
+ line->fields = x2nrealloc (line->fields, &line->nfields_allocated,
+ sizeof (struct field));
}
line->fields[line->nfields].beg = field;
line->fields[line->nfields].len = len;
@@ -287,8 +285,8 @@ static void
initseq (struct seq *seq)
{
seq->count = 0;
- seq->alloc = 1;
- seq->lines = xmalloc (seq->alloc * sizeof *seq->lines);
+ seq->alloc = 0;
+ seq->lines = NULL;
}
/* Read a line from FP and add it to SEQ. Return 0 if EOF, 1 otherwise. */
@@ -297,11 +295,7 @@ static int
getseq (FILE *fp, struct seq *seq)
{
if (seq->count == seq->alloc)
- {
- seq->alloc *= 2;
- seq->lines = (struct line *)
- xrealloc (seq->lines, seq->alloc * sizeof (struct line));
- }
+ seq->lines = x2nrealloc (seq->lines, &seq->alloc, sizeof *seq->lines);
if (get_line (fp, &seq->lines[seq->count]))
{