Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/newlib
diff options
context:
space:
mode:
authorTakashi Yano <takashi.yano@nifty.ne.jp>2023-11-23 14:00:55 +0300
committerTakashi Yano <takashi.yano@nifty.ne.jp>2023-11-24 03:53:11 +0300
commit0e961f582a315fd6f13b8e924f58af6057558348 (patch)
tree2c36f463ee206c0898d9ab657b37e5af77097c2f /newlib
parent3ef4bb186196b23f7a349a0614294b7ee1e0c4dc (diff)
newlib: nl_langinfo: Fix a bug of time stuff.
Previously, e.g. nl_langinfo(_NL_TIME_WMONTH_1) returns "February" due to the bug. Similarly, nl_langinfo(_NL_TIME_WWDAY_1) returns "Mon". This occurs because wide char month and weekday arrays are pointed off-by-one (e.g. the array wmon[12] is reffered as wmon[1-12] rather than wmon[0-11]). This patch fixes that. Fixes: d47d5b850bed ("Extend locale support to maintain wide char values of native strings") Reviewed-by: Corinna Vinschen <corinna@vinschen.de> Signed-off-by: Takashi Yano <takashi.yano@nifty.ne.jp>
Diffstat (limited to 'newlib')
-rw-r--r--newlib/libc/locale/nl_langinfo.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/newlib/libc/locale/nl_langinfo.c b/newlib/libc/locale/nl_langinfo.c
index aaa1aef86..c34a7d131 100644
--- a/newlib/libc/locale/nl_langinfo.c
+++ b/newlib/libc/locale/nl_langinfo.c
@@ -78,6 +78,7 @@ static struct _nl_item_t
_NLITEM (ctype, woutdigits[8]),
_NLITEM (ctype, woutdigits[9]),
_NLITEM (time, codeset),
+ _NLITEM (time, wmon[0]),
_NLITEM (time, wmon[1]),
_NLITEM (time, wmon[2]),
_NLITEM (time, wmon[3]),
@@ -89,7 +90,7 @@ static struct _nl_item_t
_NLITEM (time, wmon[9]),
_NLITEM (time, wmon[10]),
_NLITEM (time, wmon[11]),
- _NLITEM (time, wmon[12]),
+ _NLITEM (time, wmonth[0]),
_NLITEM (time, wmonth[1]),
_NLITEM (time, wmonth[2]),
_NLITEM (time, wmonth[3]),
@@ -101,21 +102,20 @@ static struct _nl_item_t
_NLITEM (time, wmonth[9]),
_NLITEM (time, wmonth[10]),
_NLITEM (time, wmonth[11]),
- _NLITEM (time, wmonth[12]),
+ _NLITEM (time, wwday[0]),
_NLITEM (time, wwday[1]),
_NLITEM (time, wwday[2]),
_NLITEM (time, wwday[3]),
_NLITEM (time, wwday[4]),
_NLITEM (time, wwday[5]),
_NLITEM (time, wwday[6]),
- _NLITEM (time, wwday[7]),
+ _NLITEM (time, wweekday[0]),
_NLITEM (time, wweekday[1]),
_NLITEM (time, wweekday[2]),
_NLITEM (time, wweekday[3]),
_NLITEM (time, wweekday[4]),
_NLITEM (time, wweekday[5]),
_NLITEM (time, wweekday[6]),
- _NLITEM (time, wweekday[7]),
_NLITEM (time, wX_fmt),
_NLITEM (time, wx_fmt),
_NLITEM (time, wc_fmt),