libio: Use wmemset instead of __wmemset to avoid linknamespace issue

If the wide string operations are pulled into the link, the
wmemset symbol can cause a linknamespace failure.
This commit is contained in:
Florian Weimer 2016-06-03 09:48:14 +02:00
parent 1c1e7fb658
commit cfac4de69c
2 changed files with 8 additions and 3 deletions

View File

@ -1,3 +1,8 @@
2016-06-03 Florian Weimer <fweimer@redhat.com>
* libio/wstrops.c (_IO_wstr_overflow, enlarge_userbuf): Use
__wmemset instead of wmemset.
2016-06-02 Carlos O'Donell <carlos@redhat.com>
* sysdeps/unix/sysv/linux/bits/in.h [defined _UAPI_LINUX_IN6_H ||

View File

@ -111,7 +111,7 @@ _IO_wstr_overflow (_IO_FILE *fp, _IO_wint_t c)
fp->_wide_data->_IO_buf_base = NULL;
}
wmemset (new_buf + old_wblen, L'\0', new_size - old_wblen);
__wmemset (new_buf + old_wblen, L'\0', new_size - old_wblen);
_IO_wsetb (fp, new_buf, new_buf + new_size, 1);
fp->_wide_data->_IO_read_base =
@ -228,9 +228,9 @@ enlarge_userbuf (_IO_FILE *fp, _IO_off64_t offset, int reading)
new position. */
assert (offset >= oldend);
if (reading)
wmemset (wd->_IO_read_base + oldend, L'\0', offset - oldend);
__wmemset (wd->_IO_read_base + oldend, L'\0', offset - oldend);
else
wmemset (wd->_IO_write_base + oldend, L'\0', offset - oldend);
__wmemset (wd->_IO_write_base + oldend, L'\0', offset - oldend);
return 0;
}