Ondřej Bílka <nel...@seznam.cz> skribis: > On Tue, Sep 22, 2015 at 05:27:55PM +0200, Ludovic Courtès wrote: >> With libc 2.22 people are starting to realize that libc does not >> guarantee that it can load locale data built with another libc version, >> but they learn it the hard way: >> >> loadlocale.c:130: _nl_intern_locale_data: Assertion `cnt < (sizeof >> (_nl_value_type_LC_COLLATE) / sizeof (_nl_value_type_LC_COLLATE[0]))' failed. >> >> This patch changes such conditions to return EINVAL instead of aborting. >> >> WDYT? >> > While that assert is quite cryptic I dont see why just returning EINVAL is > better. How do you distinguish that its wrong locale version versus not > installed?
The rest of this function already returns EINVAL when something is fishy. This patch makes the behavior more consistent. Ludo’. c