diff --git a/src/Rel8/Type/Composite.hs b/src/Rel8/Type/Composite.hs index 0f8d42d5..0a6a537e 100644 --- a/src/Rel8/Type/Composite.hs +++ b/src/Rel8/Type/Composite.hs @@ -194,9 +194,10 @@ parseRow = parse $ do unquoted = A.takeWhile1 (A.notInClass ",\"()") quoted = A.char '"' *> contents <* A.char '"' where - contents = fold <$> many (unquote <|> unescape) + contents = fold <$> many (unquote <|> unescape <|> quote) where unquote = A.takeWhile1 (A.notInClass "\"\\") unescape = A.char '\\' *> do BS.singleton <$> do A.char '\\' <|> A.char '"' + quote = "\"" <$ A.string "\"\""