return NULL;
}
- while (n-- && *src) {
+ while (n && *src) {
size_t c_size;
- codepoint_t c = next_codepoint_handle(iconv_handle, src, &c_size);
+ codepoint_t c = next_codepoint_handle_ext(iconv_handle, src, n,
+ CH_UNIX, &c_size);
src += c_size;
+ n -= c_size;
c = toupper_m(c);