From fa1293a11f2137709aec313f5789502406e587dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tina=20M=C3=BCller=20=28tinita=29?= Date: Sat, 28 Mar 2020 18:06:58 +0100 Subject: Output document end marker after open ended scalars (#162) --- src/emitter.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) (limited to 'src') diff --git a/src/emitter.c b/src/emitter.c index 21ef1b2..f2b215f 100644 --- a/src/emitter.c +++ b/src/emitter.c @@ -652,6 +652,18 @@ yaml_emitter_emit_document_start(yaml_emitter_t *emitter, else if (event->type == YAML_STREAM_END_EVENT) { + /** + * This can happen if a block scalar with trailing empty lines + * is at the end of the stream + */ + if (emitter->open_ended) + { + if (!yaml_emitter_write_indicator(emitter, "...", 1, 0, 0)) + return 0; + emitter->open_ended = 0; + if (!yaml_emitter_write_indent(emitter)) + return 0; + } if (!yaml_emitter_flush(emitter)) return 0; -- cgit v1.2.1