diff --git a/src/emitter.c b/src/emitter.c index 609b28a4..de1edcda 100644 --- a/src/emitter.c +++ b/src/emitter.c @@ -760,13 +760,19 @@ yaml_emitter_emit_flow_sequence_item(yaml_emitter_t *emitter, emitter->flow_level --; emitter->indent = POP(emitter, emitter->indents); if (emitter->canonical && !first) { - if (!yaml_emitter_write_indicator(emitter, ",", 0, 0, 0)) + if (!yaml_emitter_write_indicator(emitter, ",", 0, 0, 0)) { + emitter->state = POP(emitter, emitter->states); return 0; - if (!yaml_emitter_write_indent(emitter)) + } + if (!yaml_emitter_write_indent(emitter)) { + emitter->state = POP(emitter, emitter->states); return 0; + } } - if (!yaml_emitter_write_indicator(emitter, "]", 0, 0, 0)) + if (!yaml_emitter_write_indicator(emitter, "]", 0, 0, 0)) { + emitter->state = POP(emitter, emitter->states); return 0; + } emitter->state = POP(emitter, emitter->states); return 1; @@ -809,13 +815,19 @@ yaml_emitter_emit_flow_mapping_key(yaml_emitter_t *emitter, emitter->flow_level --; emitter->indent = POP(emitter, emitter->indents); if (emitter->canonical && !first) { - if (!yaml_emitter_write_indicator(emitter, ",", 0, 0, 0)) + if (!yaml_emitter_write_indicator(emitter, ",", 0, 0, 0)) { + emitter->state = POP(emitter, emitter->states); return 0; - if (!yaml_emitter_write_indent(emitter)) + } + if (!yaml_emitter_write_indent(emitter)) { + emitter->state = POP(emitter, emitter->states); return 0; + } } - if (!yaml_emitter_write_indicator(emitter, "}", 0, 0, 0)) + if (!yaml_emitter_write_indicator(emitter, "}", 0, 0, 0)) { + emitter->state = POP(emitter, emitter->states); return 0; + } emitter->state = POP(emitter, emitter->states); return 1;