strftime.3.patch   [plain text]


--- _SB/Libc/stdtime/FreeBSD/strftime.3	2004-11-25 11:38:45.000000000 -0800
+++ _SB/Libc/stdtime/FreeBSD/strftime.3.edit	2006-06-28 16:55:53.000000000 -0700
@@ -40,7 +40,8 @@
 .Dt STRFTIME 3
 .Os
 .Sh NAME
-.Nm strftime
+.Nm strftime ,
+.Nm strftime_l
 .Nd format date and time
 .Sh LIBRARY
 .Lb libc
@@ -48,10 +49,20 @@
 .In time.h
 .Ft size_t
 .Fo strftime
-.Fa "char * restrict buf"
+.Fa "char *restrict s"
 .Fa "size_t maxsize"
-.Fa "const char * restrict format"
-.Fa "const struct tm * restrict timeptr"
+.Fa "const char *restrict format"
+.Fa "const struct tm *restrict timeptr"
+.Fc
+.In time.h
+.In xlocale.h
+.Ft size_t
+.Fo strftime_l
+.Fa "char *restrict s"
+.Fa "size_t maxsize"
+.Fa "const char *restrict format"
+.Fa "const struct tm *restrict timeptr"
+.Fa "locale_t loc"
 .Fc
 .Sh DESCRIPTION
 The
@@ -59,7 +70,7 @@
 function formats the information from
 .Fa timeptr
 into the buffer
-.Fa buf
+.Fa s ,
 according to the string pointed to by
 .Fa format .
 .Pp
@@ -83,6 +94,14 @@
 terminating NUL.
 Otherwise, zero is returned and the buffer contents are indeterminate.
 .Pp
+Although the
+.Fn strftime
+function uses the current locale, the
+.Fn strftime_l
+function may be passed a locale directly. See
+.Xr xlocale 3
+for more information.
+.Pp
 The conversion specifications are copied to the buffer after expansion
 as follows:-
 .Bl -tag -width "xxxx"
@@ -226,7 +245,8 @@
 .Xr ctime 3 ,
 .Xr printf 3 ,
 .Xr strptime 3 ,
-.Xr wcsftime 3
+.Xr wcsftime 3 ,
+.Xr xlocale 3
 .Sh STANDARDS
 The
 .Fn strftime
@@ -253,11 +273,12 @@
 .Ql %u ,
 .Ql \&%V ,
 .Ql %z ,
+and
 .Ql %+ .
 .Pp
 The peculiar week number and year in the replacements of
 .Ql %G ,
-.Ql %g
+.Ql %g ,
 and
 .Ql \&%V
 are defined in ISO 8601: 1988.