about summary refs log tree commit diff
path: root/iconvdata/bug-iconv14.c
Commit message (Collapse)AuthorAgeFilesLines
* gconv: Fix assertion failure in ISO-2022-JP-3 module (bug 27256)Florian Weimer2021-01-271-0/+127
The conversion loop to the internal encoding does not follow the interface contract that __GCONV_FULL_OUTPUT is only returned after the internal wchar_t buffer has been filled completely. This is enforced by the first of the two asserts in iconv/skeleton.c: /* We must run out of output buffer space in this rerun. */ assert (outbuf == outerr); assert (nstatus == __GCONV_FULL_OUTPUT); This commit solves this issue by queuing a second wide character which cannot be written immediately in the state variable, like other converters already do (e.g., BIG5-HKSCS or TSCII). Reported-by: Tavis Ormandy <taviso@gmail.com>