From cc52b7fc4351b041b8f7cd7a65a0ff6c603cfecb Mon Sep 17 00:00:00 2001 From: Jim Meyering Date: Sun, 4 Jan 2004 21:10:11 +0000 Subject: (n_tabs_allocated): New global. (add_tabstop): Use x2nrealloc rather than xrealloc. --- src/expand.c | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) (limited to 'src/expand.c') diff --git a/src/expand.c b/src/expand.c index 8be52b563..f92dca32a 100644 --- a/src/expand.c +++ b/src/expand.c @@ -53,10 +53,6 @@ allocated for the output line. */ #define OUTPUT_BLOCK 256 -/* The number of bytes added at a time to the amount of memory - allocated for the list of tabstops. */ -#define TABLIST_BLOCK 256 - /* The name this program was run with. */ char *program_name; @@ -74,7 +70,8 @@ static int *tab_list; /* The index of the first invalid element of `tab_list', where the next element can be added. */ -static int first_free_tab; +static size_t first_free_tab; +static size_t n_tabs_allocated; /* Null-terminated array of input filenames. */ static char **file_list; @@ -142,9 +139,8 @@ add_tabstop (int tabval) { if (tabval == -1) return; - if (first_free_tab % TABLIST_BLOCK == 0) - tab_list = xrealloc (tab_list, (first_free_tab - + TABLIST_BLOCK * sizeof (tab_list[0]))); + if (first_free_tab == n_tabs_allocated) + tab_list = x2nrealloc (tab_list, &n_tabs_allocated, sizeof *tab_list); tab_list[first_free_tab++] = tabval; } -- cgit v1.2.3-54-g00ecf