• Brad King's avatar
    codecvt: Re-implement do_out and do_unshift · 690acadc
    Brad King authored
    The previous implementation assumed that only one byte would be given
    in the `from` buffer by the caller at a time.  This may be true for
    MSVC but is not for the GNU library on Windows.  Re-implement these
    methods to handle more than one byte per call.
    
    Also simplify the state management by keeping all state between calls
    directly in the `mbstate_t` argument instead of using it to index our
    own heap-allocated state.
    
    Fixes: #16893
    690acadc
cm_utf8.c 2.58 KB