about summary refs log tree commit diff
path: root/src/time/strftime.c
diff options
context:
space:
mode:
Diffstat (limited to 'src/time/strftime.c')
-rw-r--r--src/time/strftime.c11
1 files changed, 10 insertions, 1 deletions
diff --git a/src/time/strftime.c b/src/time/strftime.c
index d16e8134..e377fff2 100644
--- a/src/time/strftime.c
+++ b/src/time/strftime.c
@@ -1,8 +1,10 @@
 #include <stdio.h>
 #include <stdlib.h>
 #include <langinfo.h>
+#include <locale.h>
 #include <time.h>
 #include <limits.h>
+#include "libc.h"
 
 // FIXME: integer overflows
 
@@ -42,7 +44,7 @@ static int week_num(const struct tm *tm)
 	return val;
 }
 
-size_t strftime(char *restrict s, size_t n, const char *restrict f, const struct tm *restrict tm)
+size_t __strftime_l(char *restrict s, size_t n, const char *restrict f, const struct tm *restrict tm, locale_t loc)
 {
 	nl_item item;
 	int val;
@@ -209,3 +211,10 @@ recu_strftime:
 	s[l] = 0;
 	return l;
 }
+
+size_t strftime(char *restrict s, size_t n, const char *restrict f, const struct tm *restrict tm)
+{
+	return __strftime_l(s, n, f, tm, LC_GLOBAL_LOCALE);
+}
+
+weak_alias(__strftime_l, strftime_l);