Joe Orton wrote:
The convset->ich is set up to convert from UTF-8 to ISO-8895-1; check_sbcs fails to create the sbcs table for this case, of course. But the iconv state is not reset, and it was by design left part-way through a UTF-8 sequence: so when a subsequent conv_buffer calls come along to reuse iconv->ich, expecting it to be in the initial state, it all goes horribly wrong.
make sense, says the perpetrator
The iconv(, NULL, NULL, NULL, NULL)-type calls to reset to the initial conversion state segfaulted on AIX so it seems necessary to recreate the cd, as per below... the same problem exists in the apr_iconv-based implementation I guess.
shrug
Am I missing anything? Not sure why this problem doesn't affect more users.
ditto... while most of my use of it has been with the simple conversions, I remember playing with mod_charset_lite and this code on Solaris 8 with multi-byte characters