indx_t can be a 16 bit type, and is thus not suited to hold a difference

between two pointers in the general case. Replace it by ptrdiff_t.

-> recno databases can now handle records of more than 64KB
-> nvi can now handle files with lines bigger than 64KB

Problem and fix suggested by FreeBSD PR#9350
This commit is contained in:
aymeric 2001-09-30 21:12:00 +00:00
parent 801da94626
commit b39251c6b2

View File

@ -1,4 +1,4 @@
/* $NetBSD: rec_get.c,v 1.10 1997/07/21 14:06:44 jtc Exp $ */
/* $NetBSD: rec_get.c,v 1.11 2001/09/30 21:12:00 aymeric Exp $ */
/*-
* Copyright (c) 1990, 1993, 1994
@ -38,7 +38,7 @@
#if 0
static char sccsid[] = "@(#)rec_get.c 8.9 (Berkeley) 8/18/94";
#else
__RCSID("$NetBSD: rec_get.c,v 1.10 1997/07/21 14:06:44 jtc Exp $");
__RCSID("$NetBSD: rec_get.c,v 1.11 2001/09/30 21:12:00 aymeric Exp $");
#endif
#endif /* LIBC_SCCS and not lint */
@ -189,7 +189,7 @@ __rec_vpipe(t, top)
{
DBT data;
recno_t nrec;
indx_t len;
ptrdiff_t len;
size_t sz;
int bval, ch;
u_char *p;