[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 07/13] linebuffer: prefer idx_t for indexes
From: |
Paul Eggert |
Subject: |
[PATCH 07/13] linebuffer: prefer idx_t for indexes |
Date: |
Fri, 11 Jun 2021 17:25:47 -0700 |
* lib/linebuffer.c (readlinebuffer_delim):
* lib/linebuffer.h (struct linebuffer):
Prefer idx_t to size_t for indexes, using idx_t-related allocators.
* lib/linebuffer.h: Include idx.h.
* modules/linebuffer (Depends-on): Add idx.
---
ChangeLog | 3 +++
lib/linebuffer.c | 4 ++--
lib/linebuffer.h | 5 +++--
modules/linebuffer | 2 +-
4 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/ChangeLog b/ChangeLog
index 84ccb3645..5dd638456 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -8,6 +8,8 @@
* lib/exclude.c (struct exclude_pattern, free_exclude_segment)
(file_pattern_matches, add_exclude, add_exclude_fp):
* lib/getusershell.c (line_size, readname):
+ * lib/linebuffer.c (readlinebuffer_delim):
+ * lib/linebuffer.h (struct linebuffer):
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.
@@ -24,6 +26,7 @@
(x2nrealloc): Moved here from xalloc.h.
* modules/xalloc (Depends-on): Add ialloc.
* modules/dirname (Depends-on): Removbe xstrndup.
+ * modules/linebuffer (Depends-on): Add idx.
ialloc: new module
* lib/ialloc.c, lib/ialloc.h, modules/ialloc: New files.
diff --git a/lib/linebuffer.c b/lib/linebuffer.c
index 10b0428d0..5b579019f 100644
--- a/lib/linebuffer.c
+++ b/lib/linebuffer.c
@@ -80,8 +80,8 @@ readlinebuffer_delim (struct linebuffer *linebuffer, FILE
*stream,
}
if (p == end)
{
- size_t oldsize = linebuffer->size;
- buffer = x2realloc (buffer, &linebuffer->size);
+ idx_t oldsize = linebuffer->size;
+ buffer = xpalloc (buffer, &linebuffer->size, 1, -1, 1);
p = buffer + oldsize;
linebuffer->buffer = buffer;
end = buffer + linebuffer->size;
diff --git a/lib/linebuffer.h b/lib/linebuffer.h
index 691a4c2f8..5fa5ad2fe 100644
--- a/lib/linebuffer.h
+++ b/lib/linebuffer.h
@@ -19,14 +19,15 @@
#if !defined LINEBUFFER_H
# define LINEBUFFER_H
+# include "idx.h"
# include <stdio.h>
/* A 'struct linebuffer' holds a line of text. */
struct linebuffer
{
- size_t size; /* Allocated. */
- size_t length; /* Used. */
+ idx_t size; /* Allocated. */
+ idx_t length; /* Used. */
char *buffer;
};
diff --git a/modules/linebuffer b/modules/linebuffer
index 1444ff074..4ddd3c38e 100644
--- a/modules/linebuffer
+++ b/modules/linebuffer
@@ -6,6 +6,7 @@ lib/linebuffer.h
lib/linebuffer.c
Depends-on:
+idx
xalloc
configure.ac:
@@ -21,4 +22,3 @@ GPL
Maintainer:
Jim Meyering
-
--
2.30.2
- [PATCH 01/13] ialloc: new module, Paul Eggert, 2021/06/11
- [PATCH 03/13] dirname: prefer idx_t for some indexes, Paul Eggert, 2021/06/11
- [PATCH 05/13] exclude: prefer idx_t for most indexes, Paul Eggert, 2021/06/11
- [PATCH 06/13] getusershell: prefer idx_t for indexes, Paul Eggert, 2021/06/11
- [PATCH 09/13] readutmp: prefer idx_t for indexes, Paul Eggert, 2021/06/11
- [PATCH 07/13] linebuffer: prefer idx_t for indexes,
Paul Eggert <=
- [PATCH 11/13] stack: prefer idx_t for indexes, Paul Eggert, 2021/06/11
- [PATCH 12/13] userspec: prefer idx_t for indexes, Paul Eggert, 2021/06/11
- [PATCH 04/13] dfa: prefer idx_t for indexes, Paul Eggert, 2021/06/11
- [PATCH 02/13] xalloc: new idx_t-based allocators, Paul Eggert, 2021/06/11
- [PATCH 08/13] readtokens: prefer idx_t for indexes, Paul Eggert, 2021/06/11
- [PATCH 10/13] savedir: prefer idx_t for indexes, Paul Eggert, 2021/06/11
- [PATCH 13/13] xgethostname: prefer idx_t for indexes, Paul Eggert, 2021/06/11
- Re: [PATCH 01/13] ialloc: new module, Bruno Haible, 2021/06/13