Add standalone_months field to libc strftime().
Replicate my change 722a5c0462f38827f4097065bfc3826b9e0e9fb4 into
bionic in an attempt to fix the build.
diff --git a/libc/include/time.h b/libc/include/time.h
index fa1da48..14066a1 100644
--- a/libc/include/time.h
+++ b/libc/include/time.h
@@ -83,6 +83,7 @@
struct strftime_locale {
const char * mon[12];
const char * month[12];
+ const char * standalone_month[12];
const char * wday[7];
const char * weekday[7];
const char * X_fmt;
diff --git a/libc/tzcode/strftime.c b/libc/tzcode/strftime.c
index 75ab8ce..930ecf4 100644
--- a/libc/tzcode/strftime.c
+++ b/libc/tzcode/strftime.c
@@ -69,6 +69,9 @@
"January", "February", "March", "April", "May", "June",
"July", "August", "September", "October", "November", "December"
}, {
+ "January", "February", "March", "April", "May", "June",
+ "July", "August", "September", "October", "November", "December"
+ }, {
"Sun", "Mon", "Tue", "Wed",
"Thu", "Fri", "Sat"
}, {
@@ -219,10 +222,17 @@
pt, ptlim, modifier);
continue;
case 'B':
- pt = _add((t->tm_mon < 0 ||
- t->tm_mon >= MONSPERYEAR) ?
- "?" : locale->month[t->tm_mon],
- pt, ptlim, modifier);
+ if (modifier == '-') {
+ pt = _add((t->tm_mon < 0 ||
+ t->tm_mon >= MONSPERYEAR) ?
+ "?" : Locale->standalone_month[t->tm_mon],
+ pt, ptlim, modifier);
+ } else {
+ pt = _add((t->tm_mon < 0 ||
+ t->tm_mon >= MONSPERYEAR) ?
+ "?" : Locale->month[t->tm_mon],
+ pt, ptlim, modifier);
+ }
continue;
case 'b':
case 'h':