[RFC,v7,08/16] Let alternative month names be a copy of regular ones (bug 10871).

Message ID 249611570.905512.1496049715386@poczta.nazwa.pl
State Superseded
Headers

Commit Message

Rafal Luzynski May 29, 2017, 9:21 a.m. UTC
  If alt_mon definition is missing from a locale then let it be
a copy of mon array.  Majority of languages do not need this feature
so let us accept the locale definition file without alt_mon and
provide the same content as mon when software requires alt_mon.

[BZ #10871]
* locale/programs/ld-time.c: alternative month names are a copy of
mon if not provided explicitly.
---
 locale/programs/ld-time.c | 8 ++++++++
 1 file changed, 8 insertions(+)

 	default:
  

Patch

diff --git a/locale/programs/ld-time.c b/locale/programs/ld-time.c
index 66a9e30..a6bf2b1 100644
--- a/locale/programs/ld-time.c
+++ b/locale/programs/ld-time.c
@@ -960,6 +960,14 @@  time_read (struct linereader *ldfile, struct localedef_t
*result,
 	    lr_error (ldfile, _("\
 %1$s: definition does not end with `END %1$s'"), "LC_TIME");
 	  lr_ignore_rest (ldfile, now->tok == tok_lc_time);
+
+	  /* If alt_mon is missing then let it be a copy of mon.  */
+	  if (!ignore_content && !time->alt_mon_defined)
+	    {
+	      memcpy (time->alt_mon, time->mon, sizeof (time->mon));
+	      memcpy (time->walt_mon, time->wmon, sizeof (time->wmon));
+	      time->alt_mon_defined = 1;
+	    }
 	  return;