File fix-nonvoid-return.diff of Package iodbc

diff -Nur libiodbc-3.52.14/iodbcinst/unicode.c new/iodbcinst/unicode.c
--- libiodbc-3.52.14/iodbcinst/unicode.c	2021-02-17 14:39:22.000000000 +0100
+++ new/iodbcinst/unicode.c	2021-05-31 18:26:17.332781996 +0200
@@ -688,9 +688,10 @@
 {
   switch(charset)
     {
-    case CP_UTF8: return 1;
     case CP_UTF16: return sizeof(ucs2_t);
     case CP_UCS4: return sizeof(ucs4_t);
+    case CP_UTF8:
+    default: return 1;
     }
 }
 
@@ -700,9 +701,10 @@
 {
   switch(charset)
     {
-    case CP_UTF8: return UTF8_MAX_CHAR_LEN;
     case CP_UTF16: return sizeof(ucs2_t) * 2;
     case CP_UCS4: return sizeof(ucs4_t);
+    case CP_UTF8:
+    default: return UTF8_MAX_CHAR_LEN;
     }
 }
 
@@ -2131,13 +2133,16 @@
 
   switch(charset)
     {
+    case CP_UTF16: return (SQLWCHAR)u2[pos];
+    case CP_UCS4: return (SQLWCHAR)u4[pos];
     case CP_UTF8:
-      {
+    default:
+      { 
         int mask, len, i=0;
         SQLWCHAR wc = 0;
         SQLCHAR *u8str = (SQLCHAR*)str;
         while(i < pos)
-        {
+        { 
           UTF8_COMPUTE(*u8str, mask, len);
           if (len == -1)
             break;
@@ -2155,8 +2160,6 @@
           }
         return wc;
       }
-    case CP_UTF16: return (SQLWCHAR)u2[pos];
-    case CP_UCS4: return (SQLWCHAR)u4[pos];
     }
 }
 
openSUSE Build Service is sponsored by