diff options
-rw-r--r-- | lib/ChangeLog | 9 | ||||
-rw-r--r-- | lib/strftime.c | 1 |
2 files changed, 10 insertions, 0 deletions
diff --git a/lib/ChangeLog b/lib/ChangeLog index 4d0e73a81..236184d4f 100644 --- a/lib/ChangeLog +++ b/lib/ChangeLog @@ -1,3 +1,12 @@ +2005-03-14 Jim Meyering <jim@meyering.net> + + * strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT + && HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[] + to be nonzero so that we (and caller) can detect the difference + between a valid zero-length expansion and an error return, even + when the underlying strftime fails before writing anything into + that location. + 2005-03-11 Jim Meyering <jim@meyering.net> * getdate.c: Regenerate using bison-2.0. diff --git a/lib/strftime.c b/lib/strftime.c index 8085a5992..78a963b42 100644 --- a/lib/strftime.c +++ b/lib/strftime.c @@ -776,6 +776,7 @@ my_strftime (CHAR_T *s, size_t maxsize, const CHAR_T *format, *u++ = modifier; *u++ = format_char; *u = '\0'; + ubuf[0] = '\1'; len = strftime (ubuf, sizeof ubuf, ufmt, tp); if (len == 0 && ubuf[0] != '\0') return 0; |