svn commit: r304703 - head/include/xlocale
Ngie Cooper (yaneurabeya)
yaneurabeya at gmail.com
Tue Aug 23 20:53:13 UTC 2016
> On Aug 23, 2016, at 13:33, Andrey A. Chernov <ache at FreeBSD.org> wrote:
>
> Author: ache
> Date: Tue Aug 23 20:33:56 2016
> New Revision: 304703
> URL: https://svnweb.freebsd.org/changeset/base/304703
>
> Log:
> LC_*_MASK bit shifting order was partially broken from the initial commit
> time at year 2012. Only LC_COLLATE_MASK and LC_CTYPE_MASK are in the
> right order.
>
> The order here should match XLC_* from "xlocale_private.h" which, in turn,
> match LC_* publicly visible order from <locale.h> which determines how
> locale components are stored in the structure.
> LC_*_MASK -> XLC_* translation done as "ffs(mask) - 1" in the querylocale()
> and equivalent shift loop in the newlocale(), so mapped to some wrong
> components (excluding two mentioned above).
>
> Formally the fix is ABI breakage, but old code using those masks
> never works properly in any case.
> Only newlocale() and querylocale() are affected.
>
> MFC after: 7 days
>
> Modified:
> head/include/xlocale/_locale.h
Should __FreeBSD_version be bumped?
Thanks,
-Ngie
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 842 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.freebsd.org/pipermail/svn-src-all/attachments/20160823/d5f6a8cf/attachment.sig>
More information about the svn-src-all
mailing list