diff --git a/purebred-email.cabal b/purebred-email.cabal
--- a/purebred-email.cabal
+++ b/purebred-email.cabal
@@ -2,7 +2,7 @@
 -- documentation, see http://haskell.org/cabal/users-guide/
 
 name:                purebred-email
-version:             0.4
+version:             0.4.1
 synopsis:            types and parser for email messages (including MIME)
 description:
   The purebred email library.  RFC 5322, MIME, etc.
diff --git a/src/Data/MIME/Base64.hs b/src/Data/MIME/Base64.hs
--- a/src/Data/MIME/Base64.hs
+++ b/src/Data/MIME/Base64.hs
@@ -16,7 +16,9 @@
 
 import Control.Lens (prism')
 import qualified Data.ByteString as B
+import qualified Data.ByteString.Lazy as L
 import qualified Data.ByteString.Base64 as B64
+import qualified Data.ByteString.Base64.Lazy as L64
 import Data.Word (Word8)
 
 import Data.MIME.Types (ContentTransferEncoding)
@@ -41,7 +43,11 @@
 
 -}
 contentTransferEncodeBase64 :: B.ByteString -> B.ByteString
-contentTransferEncodeBase64 = B64.joinWith "\r\n" 76 . B64.encode
+contentTransferEncodeBase64 = L.toStrict . wrap . L64.encode . L.fromStrict
+  where
+  wrap s = case L.splitAt 76 s of
+    ("", _) -> ""
+    (l, s') -> l <> "\r\n" <> wrap s'
 
 {-
 
