aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArnold D. Robbins <arnold@skeeve.com>2014-12-18 21:26:14 +0200
committerArnold D. Robbins <arnold@skeeve.com>2014-12-18 21:26:14 +0200
commit06cd783a8994b704c066aa59e11a6e76292d806e (patch)
tree335a4731980ed21d3e67a872a81e065350a0b345
parent6e786e9ea47966a9cac7cfef4a4079ac379580b0 (diff)
downloadegawk-06cd783a8994b704c066aa59e11a6e76292d806e.tar.gz
egawk-06cd783a8994b704c066aa59e11a6e76292d806e.tar.bz2
egawk-06cd783a8994b704c066aa59e11a6e76292d806e.zip
More removal of extra unused byte.
-rw-r--r--ChangeLog4
-rw-r--r--builtin.c4
-rw-r--r--helpers/ChangeLog4
-rw-r--r--helpers/testdfa.c4
-rw-r--r--old-extension/ChangeLog5
-rw-r--r--old-extension/bindarr.c2
-rw-r--r--old-extension/fileop.c2
7 files changed, 19 insertions, 6 deletions
diff --git a/ChangeLog b/ChangeLog
index 851eab2d..f37a8c2e 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2014-12-18 Arnold D. Robbins <arnold@skeeve.com>
+
+ * builtin.c (do_sub): Do not waste a byte at the end of a string.
+
2014-12-14 Arnold D. Robbins <arnold@skeeve.com>
* awkgram.y (yyerror): Do not waste a byte at the end of a string.
diff --git a/builtin.c b/builtin.c
index 067b410e..42058ec6 100644
--- a/builtin.c
+++ b/builtin.c
@@ -2874,8 +2874,8 @@ set_how_many:
lastmatchnonzero = false;
- /* guesstimate how much room to allocate; +2 forces > 0 */
- buflen = textlen + (ampersands + 1) * repllen + 2;
+ /* guesstimate how much room to allocate; +1 forces > 0 */
+ buflen = textlen + (ampersands + 1) * repllen + 1;
emalloc(buf, char *, buflen + 1, "do_sub");
buf[buflen] = '\0';
diff --git a/helpers/ChangeLog b/helpers/ChangeLog
index a5bbafb1..2cb3be44 100644
--- a/helpers/ChangeLog
+++ b/helpers/ChangeLog
@@ -1,3 +1,7 @@
+2014-12-18 Arnold D. Robbins <arnold@skeeve.com>
+
+ * testdfa.c (setup_pattern): Do not waste a byte at the end of a string.
+
2014-09-04 Arnold D. Robbins <arnold@skeeve.com>
* chlistref.awk: New file. Finds @ref{} to non-chapters.
diff --git a/helpers/testdfa.c b/helpers/testdfa.c
index 25a229a2..092a13d8 100644
--- a/helpers/testdfa.c
+++ b/helpers/testdfa.c
@@ -392,14 +392,14 @@ setup_pattern(const char *pattern, size_t *len)
* from that.
*/
if (buf == NULL) {
- buf = (char *) malloc(*len + 2);
+ buf = (char *) malloc(*len + 1);
if (buf == NULL) {
fprintf(stderr, "%s: malloc failed\n", __func__);
exit(EXIT_FAILURE);
}
buflen = *len;
} else if (*len > buflen) {
- buf = (char *) realloc(buf, *len + 2);
+ buf = (char *) realloc(buf, *len + 1);
if (buf == NULL) {
fprintf(stderr, "%s: realloc failed\n", __func__);
exit(EXIT_FAILURE);
diff --git a/old-extension/ChangeLog b/old-extension/ChangeLog
index 55c8d31d..51f44db4 100644
--- a/old-extension/ChangeLog
+++ b/old-extension/ChangeLog
@@ -1,3 +1,8 @@
+2014-12-18 Arnold D. Robbins <arnold@skeeve.com>
+
+ * bindarr.c (do_bind_array): Do not waste a byte at the end of a string.
+ * fileop.c (do_fread): Ditto.
+
2014-01-07 Arnold D. Robbins <arnold@skeeve.com>
* dbarray.awk: Use full name for lib to load in extenstion() call.
diff --git a/old-extension/bindarr.c b/old-extension/bindarr.c
index 60959903..28da389a 100644
--- a/old-extension/bindarr.c
+++ b/old-extension/bindarr.c
@@ -235,7 +235,7 @@ do_bind_array(int nargs)
}
/* copy the array -- this is passed as the second argument to the functions */
- emalloc(aname, char *, strlen(t->vname) + 2, "do_bind_array");
+ emalloc(aname, char *, strlen(t->vname) + 1, "do_bind_array");
aname[0] = '~'; /* any illegal character */
strcpy(& aname[1], symbol->vname);
td = make_array();
diff --git a/old-extension/fileop.c b/old-extension/fileop.c
index 86f62576..d76a7ded 100644
--- a/old-extension/fileop.c
+++ b/old-extension/fileop.c
@@ -55,7 +55,7 @@ do_fread(int nargs)
force_number(arg);
rlen = get_number_ui(arg);
- emalloc(rbuf, char *, rlen + 2, "do_fread");
+ emalloc(rbuf, char *, rlen + 1, "do_fread");
if ((count = fread(rbuf, 1, rlen, f->fp)) < rlen) {
if (! feof(f->fp))
update_ERRNO_int(errno);