diff --git a/include/violite.h b/include/violite.h
index c9e17cb05c142fcdff11a50ab001a532f489d87e..fa8a3bf0d593e771cd40b2dca3d69ba41a65570e 100644
--- a/include/violite.h
+++ b/include/violite.h
@@ -32,7 +32,7 @@ extern "C" {
 #endif /* __cplusplus */
 
 enum enum_vio_type { VIO_CLOSED, VIO_TYPE_TCPIP, VIO_TYPE_SOCKET,
-		     VIO_TYPE_NAMEDPIPE, VIO_TYPE_SSL };
+		     VIO_TYPE_NAMEDPIPE, VIO_TYPE_SSL, VIO_TYPE_SHARED_MEMORY };
 
 #ifndef __WIN__
 #define HANDLE void *
diff --git a/myisam/mi_check.c b/myisam/mi_check.c
index 271c6a55c8c2af8f992e96e7585f6a2344c569a5..abd6cdde657748aa48a8cdf3a89efa9e3ca700d3 100644
--- a/myisam/mi_check.c
+++ b/myisam/mi_check.c
@@ -3193,7 +3193,7 @@ static int sort_ft_key_write(MI_SORT_PARAM *sort_param, const void *a)
     }
 
     /* storing the key in the buffer. */
-    memcpy (ft_buf->buf, a+val_off, val_len);
+    memcpy (ft_buf->buf, (char *)a+val_off, val_len);
     ft_buf->buf+=val_len;
     if (ft_buf->buf < ft_buf->end)
       return 0;