version 1.6, 1997/06/30 05:36:17 |
version 1.7, 1999/05/24 17:57:18 |
|
|
wts = ftbl->weights; |
wts = ftbl->weights; |
if (!UNIQUE && SINGL_FLD && ftbl->flags & F) |
if (!UNIQUE && SINGL_FLD && ftbl->flags & F) |
wts1 = (ftbl->flags & R) ? Rascii : ascii; |
wts1 = (ftbl->flags & R) ? Rascii : ascii; |
if (!cfilebuf) |
if (!cfilebuf) { |
cfilebuf = malloc(MAXLLEN + sizeof(TMFILE)); |
cfilebuf = malloc(MAXLLEN + sizeof(TMFILE)); |
|
if (cfilebuf == NULL) |
|
errx(2, "cannot allocate memory"); |
|
} |
|
|
i = min(16, nfiles) * LALIGN(MAXLLEN+sizeof(TMFILE)); |
i = min(16, nfiles) * LALIGN(MAXLLEN+sizeof(TMFILE)); |
if (!buffer || i > BUFSIZE) { |
if (!buffer || i > BUFSIZE) { |
buffer = buffer ? realloc(buffer, i) : malloc(i); |
buffer = buffer ? realloc(buffer, i) : malloc(i); |
if (!buffer) |
if (!buffer) |
err(2, NULL); |
errx(2, "cannot allocate memory"); |
if (!SINGL_FLD) |
if (!SINGL_FLD) { |
linebuf = malloc(MAXLLEN); |
if ((linebuf = malloc(MAXLLEN)) == NULL) |
|
errx(2, "cannot allocate memory"); |
|
} |
} |
} |
|
|
if (binno >= 0) |
if (binno >= 0) |
|
|
int c; |
int c; |
RECHEADER *crec, *prec, *trec; |
RECHEADER *crec, *prec, *trec; |
|
|
if (!SINGL_FLD) |
if (!SINGL_FLD) { |
linebuf = malloc(MAXLLEN); |
if ((linebuf = malloc(MAXLLEN)) == NULL) |
|
errx(2, "cannot allocate memory"); |
|
} |
buffer = malloc(2 * (MAXLLEN + sizeof(TRECHEADER))); |
buffer = malloc(2 * (MAXLLEN + sizeof(TRECHEADER))); |
|
if (buffer == NULL) |
|
errx(2, "cannot allocate memory"); |
end = buffer + 2 * (MAXLLEN + sizeof(TRECHEADER)); |
end = buffer + 2 * (MAXLLEN + sizeof(TRECHEADER)); |
crec = (RECHEADER *) buffer; |
crec = (RECHEADER *) buffer; |
prec = (RECHEADER *) (buffer + MAXLLEN + sizeof(TRECHEADER)); |
prec = (RECHEADER *) (buffer + MAXLLEN + sizeof(TRECHEADER)); |
|
|
cmp(rec1, rec2) |
cmp(rec1, rec2) |
RECHEADER *rec1, *rec2; |
RECHEADER *rec1, *rec2; |
{ |
{ |
register r; |
register int r; |
register u_char *pos1, *pos2, *end; |
register u_char *pos1, *pos2, *end; |
register u_char *cwts; |
register u_char *cwts; |
for (cwts = wts; cwts; cwts = (cwts == wts1 ? 0 : wts1)) { |
for (cwts = wts; cwts; cwts = (cwts == wts1 ? 0 : wts1)) { |