drop lazy plural forms init in dcngettext
authorRich Felker <dalias@aerifal.cx>
Fri, 14 Sep 2018 17:00:41 +0000 (13:00 -0400)
committerRich Felker <dalias@aerifal.cx>
Fri, 14 Sep 2018 17:11:19 +0000 (13:11 -0400)
commit017e67ddde79fa2b6187a5e56b1e92bafc7c4cd2
treeb3fd75dcf61708f262adbb42863524e01caf9f47
parent12817793301398241b6cb00c740f0d3ca41076e9
drop lazy plural forms init in dcngettext

there is no good reason to wait to find and process the plural rules
for a translated message file until a gettext form requesting plural
rule processing is used. it just imposes additional synchronization,
here in the form of clunky use of atomics.

it looks like there may also have been a race condition where nplurals
could be seen without plural_rule being seen, possibly leading to null
pointer dereference. if so, this commit fixes it.
src/locale/dcngettext.c