diff --git a/README b/README
--- a/README
+++ b/README
@@ -1,7 +1,7 @@
 Parsers for the Internet Message Standard
 =========================================
 
-:Latest Release: hsemail-1.2.tar.gz_
+:Latest Release: hsemail-1.3.tar.gz_
 :Darcs:          darcs_ get --partial http://cryp.to/hsemail/
 
 Synopsis
@@ -44,7 +44,7 @@
 
 .. _darcs: http://abridgegame.org/darcs/
 
-.. _hsemail-1.2.tar.gz: http://cryp.to/hsemail/hsemail-1.2.tar.gz
+.. _hsemail-1.3.tar.gz: http://cryp.to/hsemail/hsemail-1.3.tar.gz
 
 .. _Reference Documentation: docs/index.html
 
diff --git a/Text/ParserCombinators/Parsec/Rfc2822.hs b/Text/ParserCombinators/Parsec/Rfc2822.hs
--- a/Text/ParserCombinators/Parsec/Rfc2822.hs
+++ b/Text/ParserCombinators/Parsec/Rfc2822.hs
@@ -213,11 +213,11 @@
 -- follows the actual 'utext' is /included/ in the returned string.
 
 unstructured    :: CharParser a String
-unstructured    = do r1 <- many (do r1 <- option [] fws
-                                    r2 <- utext
-                                    return (r1 ++ [r2]))
-                     r2 <- option [] fws
-                     return (concat r1 ++ r2)
+unstructured    = do r1 <- option [] fws
+                     r2 <- many (do r1 <- utext
+                                    r2 <- option [] fws
+                                    return (r1 : r2))
+                     return (r1 ++ concat r2)
                   <?> "unstructured text"
 
 
diff --git a/hsemail.cabal b/hsemail.cabal
--- a/hsemail.cabal
+++ b/hsemail.cabal
@@ -1,5 +1,5 @@
 Name:           hsemail
-Version:        1.2
+Version:        1.3
 Author:         Peter Simons <simons@cryp.to>
 License:        BSD3
 License-file:   LICENSE
