From 7c111482b974625610a81b698556a47d8dfa772b Mon Sep 17 00:00:00 2001 From: "Kim F. Storm" Date: Fri, 30 Jul 2004 12:05:32 +0000 Subject: [PATCH] (Fformat): Allocated extra (dummy) element in info. --- src/ChangeLog | 4 ++++ src/editfns.c | 5 +++-- 2 files changed, 7 insertions(+), 2 deletions(-) diff --git a/src/ChangeLog b/src/ChangeLog index 282d422beb1..11cc0f7ba89 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,7 @@ +2004-07-30 Kim F. Storm + + * editfns.c (Fformat): Allocate extra (dummy) element in info. + 2004-07-28 Luc Teirlinck * eval.c (Fdefvar, Fdefconst): Doc fixes. diff --git a/src/editfns.c b/src/editfns.c index a506c5f4fc8..88a0e63118f 100644 --- a/src/editfns.c +++ b/src/editfns.c @@ -3254,6 +3254,7 @@ usage: (format STRING &rest OBJECTS) */) /* Piggyback on this loop to initialize precision[N]. */ precision[n] = -1; } + precision[nargs] = -1; CHECK_STRING (args[0]); /* We may have to change "%S" to "%s". */ @@ -3277,11 +3278,11 @@ usage: (format STRING &rest OBJECTS) */) /* Allocate the info and discarded tables. */ { - int nbytes = nargs * sizeof *info; + int nbytes = (nargs+1) * sizeof *info; int i; info = (struct info *) alloca (nbytes); bzero (info, nbytes); - for (i = 0; i < nargs; i++) + for (i = 0; i <= nargs; i++) info[i].start = -1; discarded = (char *) alloca (SBYTES (args[0])); bzero (discarded, SBYTES (args[0])); -- 2.39.2