X-Git-Url: https://pd.if.org/git/?a=blobdiff_plain;f=opt%2Fbasecodecs%2F_PDCLIB_latin1.c;h=00d2f2600d1b3bbb33dfedaeae5bf848eb38128c;hb=d5a91cea7e7837289f9d830936c001cab0adf667;hp=29903606db810648ad2a9b19cbd6bfc3c6945c69;hpb=0a419d48138f1411d6e3e50a367b9ece5a2cf893;p=pdclib diff --git a/opt/basecodecs/_PDCLIB_latin1.c b/opt/basecodecs/_PDCLIB_latin1.c index 2990360..00d2f26 100644 --- a/opt/basecodecs/_PDCLIB_latin1.c +++ b/opt/basecodecs/_PDCLIB_latin1.c @@ -9,12 +9,15 @@ #include #include <_PDCLIB_encoding.h> +static bool latin1_mbsinit( const mbstate_t *ps ) +{ return 1; } + static bool latin1toc32( - char32_t **restrict p_outbuf, - size_t *restrict p_outsz, - const char **restrict p_inbuf, - size_t *restrict p_insz, - mbstate_t *restrict p_ps + char32_t *restrict *restrict p_outbuf, + size_t *restrict p_outsz, + const char *restrict *restrict p_inbuf, + size_t *restrict p_insz, + mbstate_t *restrict p_ps ) { while(*p_outsz && *p_insz) { @@ -33,11 +36,11 @@ static bool latin1toc32( } static bool c32tolatin1( - char **restrict p_outbuf, - size_t *restrict p_outsz, - const char32_t **restrict p_inbuf, - size_t *restrict p_insz, - mbstate_t *restrict p_ps + char *restrict *restrict p_outbuf, + size_t *restrict p_outsz, + const char32_t *restrict *restrict p_inbuf, + size_t *restrict p_insz, + mbstate_t *restrict p_ps ) { while(*p_outsz && *p_insz) { @@ -57,9 +60,11 @@ static bool c32tolatin1( return true; } -_PDCLIB_charcodec_t _PDCLIB_latin1_codec = { +struct _PDCLIB_charcodec _PDCLIB_latin1_codec = { + .__mbsinit = latin1_mbsinit, .__mbstoc32s = latin1toc32, .__c32stombs = c32tolatin1, + .__mb_max = 1, }; #endif