]> pd.if.org Git - pdclib/blobdiff - opt/basecodecs/_PDCLIB_utf8.c
PDCLib includes with quotes, not <>.
[pdclib] / opt / basecodecs / _PDCLIB_utf8.c
index a93454194fb04ea3a845168351a0ee86df2a46e8..a4c19adb349a735c6715af6c66641eab61de66b3 100644 (file)
@@ -9,7 +9,7 @@
 #include <stdint.h>
 #include <uchar.h>
 #include <assert.h>
-#include <_PDCLIB_encoding.h>
+#include "_PDCLIB_encoding.h"
 
 /* Use of the mbstate:
  *
@@ -73,7 +73,7 @@ static bool utf8toc32(
         char32_t      c32;
         switch(state) {
         case DecStart:
-            // 1 byte 
+            // 1 byte
             if(c <= 0x7F) {
                 OUT32(c);
             } else if(c <= 0xDF) {
@@ -156,7 +156,7 @@ static bool utf8toc32(
         }
 
         (*p_inbuf)++;
-        (*p_insz)--; 
+        (*p_insz)--;
     }
     END_CONVERSION;
 }
@@ -178,7 +178,7 @@ static bool c32toutf8(
 {
     START_CONVERSION
     while(*p_outsz) {
-        unsigned char outc;
+        unsigned char outc = 0;
         switch(state) {
         case Enc3R:
             outc = 0x80 | ((accum >> 12) & 0x3F);
@@ -225,14 +225,14 @@ static bool c32toutf8(
 
         if(p_outbuf) {
             **p_outbuf = outc;
-            (*p_outbuf)++; 
+            (*p_outbuf)++;
         }
-        (*p_outsz)--;        
+        (*p_outsz)--;
     }
     END_CONVERSION;
 }
 
-struct _PDCLIB_charcodec _PDCLIB_utf8_codec = {
+const struct _PDCLIB_charcodec_t _PDCLIB_utf8_codec = {
     .__mbsinit   = utf8_mbsinit,
     .__mbstoc32s = utf8toc32,
     .__c32stombs = c32toutf8,
@@ -242,23 +242,23 @@ struct _PDCLIB_charcodec _PDCLIB_utf8_codec = {
 #endif
 
 #ifdef TEST
-#include <_PDCLIB_test.h>
+#include "_PDCLIB_test.h"
 
 int main( void )
 {
 #ifndef REGTEST
     // Valid conversion & back
 
-    static const char* input = "abcde" "\xDF\xBF" "\xEF\xBF\xBF" 
+    static const char* input = "abcde" "\xDF\xBF" "\xEF\xBF\xBF"
                                "\xF4\x8F\xBF\xBF";
 
     char32_t c32out[8];
 
-    char32_t *c32ptr = &c32out[0];
-    size_t    c32rem = 8;
-    char     *chrptr = (char*) &input[0];
-    size_t    chrrem = strlen(input);
-    mbstate_t mbs = { 0 };
+    char32_t   *c32ptr = &c32out[0];
+    size_t      c32rem = 8;
+    const char *chrptr = (char*) &input[0];
+    size_t      chrrem = strlen(input);
+    mbstate_t   mbs = { 0 };
 
     TESTCASE(utf8toc32(&c32ptr, &c32rem, &chrptr, &chrrem, &mbs));
     TESTCASE(c32rem == 0);