@@ -114,6 +114,11 @@ objToEvents' (Array list) rest =
114114objToEvents' (Object pairs) rest =
115115 EventMappingStart Nothing
116116 : foldr ($) (EventMappingEnd : rest) (map pairToEvents $ M.toList pairs)
117+
118+-- Empty strings need special handling to ensure they get quoted. This avoids:
119+-- https://github.com/snoyberg/yaml/issues/24
120+objToEvents' (String "") rest = EventScalar "" StrTag SingleQuoted Nothing : rest
121+
117122objToEvents' (String s) rest = EventScalar (encodeUtf8 s) StrTag PlainNoTag Nothing : rest
118123objToEvents' Null rest = EventScalar "null" NullTag PlainNoTag Nothing : rest
119124objToEvents' (Bool True) rest = EventScalar "true" BoolTag PlainNoTag Nothing : rest