* lib/readutmp.c (read_utmp): Prefer idx_t to size_t for indexes, using idx_t-related allocators. --- ChangeLog | 1 + lib/readutmp.c | 12 ++++++------ lib/readutmp.h | 2 ++ 3 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/ChangeLog b/ChangeLog index 6e2c98014..be79b866c 100644 --- a/ChangeLog +++ b/ChangeLog @@ -11,6 +11,7 @@ * lib/linebuffer.c (readlinebuffer_delim): * lib/linebuffer.h (struct linebuffer): * lib/readtokens.c (readtoken, readtokens): + * lib/readutmp.c (read_utmp): Prefer idx_t to size_t for indexes, and use idx_t-related allocators. * lib/basename.c: Do not include xstrndup.h. (basename): Simplify by always using memcpy. diff --git a/lib/readutmp.c b/lib/readutmp.c index 73db856c5..1035a2b8a 100644 --- a/lib/readutmp.c +++ b/lib/readutmp.c @@ -91,8 +91,8 @@ int read_utmp (char const *file, size_t *n_entries, STRUCT_UTMP **utmp_buf, int options) { - size_t n_read = 0; - size_t n_alloc = 0; + idx_t n_read = 0; + idx_t n_alloc = 0; STRUCT_UTMP *utmp = NULL; STRUCT_UTMP *u; @@ -108,7 +108,7 @@ read_utmp (char const *file, size_t *n_entries, STRUCT_UTMP **utmp_buf, if (desirable_utmp_entry (u, options)) { if (n_read == n_alloc) - utmp = x2nrealloc (utmp, &n_alloc, sizeof *utmp); + utmp = xpalloc (utmp, &n_alloc, 1, -1, sizeof *utmp); utmp[n_read++] = *u; } @@ -127,8 +127,8 @@ int read_utmp (char const *file, size_t *n_entries, STRUCT_UTMP **utmp_buf, int options) { - size_t n_read = 0; - size_t n_alloc = 0; + idx_t n_read = 0; + idx_t n_alloc = 0; STRUCT_UTMP *utmp = NULL; int saved_errno; FILE *f = fopen (file, "re"); @@ -139,7 +139,7 @@ read_utmp (char const *file, size_t *n_entries, STRUCT_UTMP **utmp_buf, for (;;) { if (n_read == n_alloc) - utmp = x2nrealloc (utmp, &n_alloc, sizeof *utmp); + utmp = xpalloc (utmp, &n_alloc, 1, -1, sizeof *utmp); if (fread (&utmp[n_read], sizeof utmp[n_read], 1, f) == 0) break; n_read += desirable_utmp_entry (&utmp[n_read], options); diff --git a/lib/readutmp.h b/lib/readutmp.h index 5971e7fd8..a3a7eda01 100644 --- a/lib/readutmp.h +++ b/lib/readutmp.h @@ -212,6 +212,8 @@ enum }; char *extract_trimmed_name (const STRUCT_UTMP *ut); + +/* FIXME: This header should use idx_t, not size_t. */ int read_utmp (char const *file, size_t *n_entries, STRUCT_UTMP **utmp_buf, int options); -- 2.30.2