diff options
author | Joseph Myers <joseph@codesourcery.com> | 2014-11-12 22:41:03 +0000 |
---|---|---|
committer | Joseph Myers <joseph@codesourcery.com> | 2014-11-12 22:41:03 +0000 |
commit | 9975e3d37d8585b41db075321bade3495cf58cdb (patch) | |
tree | 416cb16185348b44feb8e0fdb778325a52598e21 /ChangeLog | |
parent | c4eae75271734f820a7477dbce33f8752af6f003 (diff) | |
download | glibc-9975e3d37d8585b41db075321bade3495cf58cdb.tar.gz glibc-9975e3d37d8585b41db075321bade3495cf58cdb.tar.xz glibc-9975e3d37d8585b41db075321bade3495cf58cdb.zip |
Fix locale memmem namespace (bug 17585).
Locale code, brought in by ISO C functions, calls memmem, which is not an ISO C function. This isn't an ISO C conformance bug, because all mem* names are reserved, but glibc practice is not to rely on that reservation (thus, memmem is only declared in string.h if __USE_GNU even though ISO C would allow it to be declared unconditionally, for example). This patch changes that code to use __memmem. Note: there are uses of memmem elsewhere in glibc that I didn't change, although it may turn out some of those also need to use __memmem. Tested for x86_64 (testsuite, and that disassembly of installed shared libraries is unchanged by this patch). [BZ #17585] * string/memmem.c [!_LIBC] (__memmem): Define to memmem. (memmem): Rename to __memmem and define as weak alias of __memmem. Use libc_hidden_weak. (__memmem): Use libc_hidden_def. * include/string.h (__memmem): Declare. Use libc_hidden_proto. * locale/findlocale.c (valid_locale_name): Use __memmem instead of memmem.
Diffstat (limited to 'ChangeLog')
-rw-r--r-- | ChangeLog | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog index 90ea96b355..9ef09070b7 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,14 @@ 2014-11-12 Joseph Myers <joseph@codesourcery.com> + [BZ #17585] + * string/memmem.c [!_LIBC] (__memmem): Define to memmem. + (memmem): Rename to __memmem and define as weak alias of + __memmem. Use libc_hidden_weak. + (__memmem): Use libc_hidden_def. + * include/string.h (__memmem): Declare. Use libc_hidden_proto. + * locale/findlocale.c (valid_locale_name): Use __memmem instead of + memmem. + [BZ #17582] * libio/iofgets.c [weak_alias && !_IO_MTSAFE_IO] (__fgets_unlocked): Add alias of _IO_fgets. Use libc_hidden_def. |