summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorUlrich Drepper <drepper@redhat.com>1998-09-24 15:02:06 +0000
committerUlrich Drepper <drepper@redhat.com>1998-09-24 15:02:06 +0000
commit3465c0ce37f534b4b1b9fa6cfd07fb3e88e2dcc0 (patch)
tree2716bd6e0003436f883a7fafa20f19413556972d
parent7a3bfc4ef45ec886010b63ba6ba4a7029b1cd526 (diff)
Update.
1998-09-24 Paul Eggert <eggert@twinsun.com> * strftime.c (underlying_strftime): Set the buffer to a nonzero value before calling strftime, and check to see whether strftime has set the buffer to zero. This lets us distinguish between an empty buffer and an error. 1998-09-24 Paul Eggert <eggert@shade.twinsun.com> * strftime.c (INT_STRLEN_BOUND): Fix typo by changing 100 to 1000. This fix is propagated from tzcode1998g.tar.gz.
-rw-r--r--ChangeLog12
-rw-r--r--time/strftime.c4
2 files changed, 14 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index 7e6e390063..fb356736bd 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,15 @@
+1998-09-24 Paul Eggert <eggert@twinsun.com>
+
+ * strftime.c (underlying_strftime):
+ Set the buffer to a nonzero value before calling
+ strftime, and check to see whether strftime has set the buffer to zero.
+ This lets us distinguish between an empty buffer and an error.
+
+1998-09-24 Paul Eggert <eggert@shade.twinsun.com>
+
+ * strftime.c (INT_STRLEN_BOUND): Fix typo by changing 100 to 1000.
+ This fix is propagated from tzcode1998g.tar.gz.
+
1998-09-24 Mark Kettenis <kettenis@phys.uva.nl>
* sysdeps/unix/siglist.c: Make sys_siglist a weak alias for
diff --git a/time/strftime.c b/time/strftime.c
index 0a830b0588..61f688e1b2 100644
--- a/time/strftime.c
+++ b/time/strftime.c
@@ -134,7 +134,7 @@ extern char *tzname[];
add one for integer division truncation;
add one more for a minus sign if t is signed. */
#define INT_STRLEN_BOUND(t) \
- ((sizeof (t) * CHAR_BIT - TYPE_SIGNED (t)) * 302 / 100 + 1 + TYPE_SIGNED (t))
+ ((sizeof (t) * CHAR_BIT - TYPE_SIGNED (t)) * 302 / 1000 + 1 + TYPE_SIGNED (t))
#define TM_YEAR_BASE 1900
@@ -748,7 +748,7 @@ my_strftime (s, maxsize, format, tp)
*u++ = format_char;
*u = '\0';
len = strftime (ubuf, sizeof ubuf, ufmt, tp);
- if (len == 0)
+ if (len == 0 && ubuf[0] != '\0')
return 0;
cpy (len, ubuf);
}