diff options
author | Paul Eggert <eggert@cs.ucla.edu> | 2005-03-14 23:23:25 +0000 |
---|---|---|
committer | Paul Eggert <eggert@cs.ucla.edu> | 2005-03-14 23:23:25 +0000 |
commit | 2f82566ff2228a7d96d58d378fb6070d849124f1 (patch) | |
tree | 2b4610f673794408f658484b9f31a01b198145a8 /lib | |
parent | b6f7c33a382dc2d0e2eeb4d038d6a89d5442503d (diff) | |
download | coreutils-2f82566ff2228a7d96d58d378fb6070d849124f1.tar.xz |
* strftime.c (my_strftime) [HAVE_STRFTIME && ! (_NL_CURRENT
&& HAVE_STRUCT_ERA_ENTRY)]: Initialize the first byte of ubuf[].
Diffstat (limited to 'lib')
-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; |