Actions
Submit #2920
closed_ascii_wcsnrtombs, _ascii_mbsnrtowcs, and _none_wcsnrtombs neglect to set src on EILSEQ error
Start date:
06/08/2016
Due date:
% Done:
0%
Estimated time:
Description
DragonFlyBSD's libc also suffers from this bug in FreeBSD and Mac OS X: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=209907
I noticed that when using wcsrtombs, if a character is encountered that can not be converted, it sets errno to EILSEQ and returns (size_t)-1. However *src still points to the original character, even though it should point to the character after the one that conversion stopped at. I've attached a test program that reproduces the issue.
The expected output is:
inptr - in: 7
The actual output is:
inptr - in: 0
I've included the patch that fixes it for the none and ascii locale (it's fine for other locales).
Files
Updated by yellowrabbit2010 over 8 years ago
- File eilseq_fix_corrected_2.patch eilseq_fix_corrected_2.patch added
- Tracker changed from Bug to Submit
corrected patch from RockinRoel and, while we are here fix possible NULL pointer dereference.
Updated by dragonflybsd1 over 8 years ago
Actions