mbtowc(3) should not set errno=EILSEQ when impomplete character parsed

Issue #59 closed
Takehiko NOZAKI repo owner created an issue

following testcase may fail:

#include <stdlib.h>
#include <wchar.h>
#include <locale.h>
#include <string.h>
#include <errno.h>

int
main(void)
{
        wchar_t wc;
        setlocale(LC_CTYPE, "ja_JP.UTF-8");
        printf("%d\n", mbtowc(&wc, "\xe0", 1));
        printf("%s\n", strerror(errno));
}

Solaris, glibc2, {Open,Free}BSD works fine.

Comments (2)

  1. Log in to comment