aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--time/strftime.c12
2 files changed, 15 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog
index 1eee99e..ee9efd6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2000-08-30 Ulrich Drepper <drepper@redhat.com>
+ * time/strftime.c (my_strftime): Add compatibility code for use
+ outside glibc. Patch by Jim Meyering <meyering@ascend.com>.
+
* sysdeps/posix/getaddrinfo.c (gaih_local): uname does not everywhere
return 0 for success but always < 0 on failure.
diff --git a/time/strftime.c b/time/strftime.c
index abda62b..95dbae1 100644
--- a/time/strftime.c
+++ b/time/strftime.c
@@ -83,6 +83,10 @@ extern char *tzname[];
# include <stddef.h>
# include <stdlib.h>
# include <string.h>
+#else
+# ifndef HAVE_MEMCPY
+# define memcpy(d, s, n) bcopy ((s), (d), (n))
+# endif
#endif
#ifdef COMPILE_WIDE
@@ -816,6 +820,14 @@ my_strftime (s, maxsize, format, tp ut_argument)
char *u = ufmt;
char ubuf[1024]; /* enough for any single format in practice */
size_t len;
+ /* Make sure we're calling the actual underlying strftime.
+ In some cases, config.h contains something like
+ "#define strftime rpl_strftime". */
+# ifdef strftime
+# undef strftime
+ size_t strftime ();
+# endif
+
*u++ = '%';
if (modifier != 0)
*u++ = modifier;