]> pd.if.org Git - pdclib/blobdiff - opt/basecodecs/_PDCLIB_latin1.c
PDCLib includes with quotes, not <>.
[pdclib] / opt / basecodecs / _PDCLIB_latin1.c
index 29903606db810648ad2a9b19cbd6bfc3c6945c69..dba6ae9ce1e0c0361eff7c68944d17984121c329 100644 (file)
@@ -7,14 +7,17 @@
 #include <stdbool.h>
 #ifndef REGTEST
 #include <uchar.h>
-#include <_PDCLIB_encoding.h>
+#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,15 +60,17 @@ static bool c32tolatin1(
     return true;
 }
 
-_PDCLIB_charcodec_t _PDCLIB_latin1_codec = {
+const struct _PDCLIB_charcodec_t _PDCLIB_latin1_codec = {
+    .__mbsinit   = latin1_mbsinit,
     .__mbstoc32s = latin1toc32,
     .__c32stombs = c32tolatin1,
+    .__mb_max    = 1,
 };
 
 #endif
 
 #ifdef TEST
-#include <_PDCLIB_test.h>
+#include "_PDCLIB_test.h"
 
 int main( void )
 {