Fixes the signed/unsigned char problem. Patch tested on amd64, all tests 
passed on all three archs:

Index: patches/patch-mimetic_codec_base64_cxx
===================================================================
RCS file: patches/patch-mimetic_codec_base64_cxx
diff -N patches/patch-mimetic_codec_base64_cxx
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-mimetic_codec_base64_cxx      27 May 2018 06:11:42 -0000
@@ -0,0 +1,14 @@
+$OpenBSD$
+
+Index: mimetic/codec/base64.cxx
+--- mimetic/codec/base64.cxx.orig
++++ mimetic/codec/base64.cxx
+@@ -13,7 +13,7 @@ const char Base64::sEncTable[] = 
+     "abcdefghijklmnopqrstuvwxyz"
+     "0123456789+/=";
+ 
+-const char Base64::sDecTable[] = {
++const signed char Base64::sDecTable[] = {
+         -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
+         -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
+         -1,-1,-1,-1,-1,-1,-1,-1,-1,-1,
Index: patches/patch-mimetic_codec_base64_h
===================================================================
RCS file: patches/patch-mimetic_codec_base64_h
diff -N patches/patch-mimetic_codec_base64_h
--- /dev/null   1 Jan 1970 00:00:00 -0000
+++ patches/patch-mimetic_codec_base64_h        27 May 2018 06:11:42 -0000
@@ -0,0 +1,14 @@
+$OpenBSD$
+
+Index: mimetic/codec/base64.h
+--- mimetic/codec/base64.h.orig
++++ mimetic/codec/base64.h
+@@ -20,7 +20,7 @@ class Base64
+     enum { default_maxlen = 76 };
+     enum { eq_sign = 100 };
+     static const char sEncTable[];
+-    static const char sDecTable[];
++    static const signed char sDecTable[];
+     static const int sDecTableSz;
+ public:
+     class Encoder; class Decoder;

Reply via email to