From 5d982dd985c6ed58e71ae1132d247cc5b62c522b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jo=C3=A3o=20Paulo=20Taylor=20Ienczak=20Zanette?= Date: Mon, 27 Jan 2020 17:51:53 +0100 Subject: [PATCH] csharp: Escape contents of struct fields' value tag. Summary: In structs' definition, field `` tags weren't scaping characters, so characters like "&" would lead to invalid XML errors. Fixes T8588. Test Plan: Run ninja test. Reviewers: segfaultxavi Reviewed By: segfaultxavi Subscribers: cedric, #reviewers, #committers Tags: #efl Maniphest Tasks: T8588 Differential Revision: https://phab.enlightenment.org/D11202 --- src/bin/eolian_mono/eolian/mono/struct_definition.hh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/src/bin/eolian_mono/eolian/mono/struct_definition.hh b/src/bin/eolian_mono/eolian/mono/struct_definition.hh index 1f4152aa74..48d69dc834 100644 --- a/src/bin/eolian_mono/eolian/mono/struct_definition.hh +++ b/src/bin/eolian_mono/eolian/mono/struct_definition.hh @@ -564,12 +564,13 @@ struct struct_definition_generator // iterate struct fields for (auto const& field : struct_.fields) { - if (!as_generator(documentation(indent.n + 1)).generate(sink, field, context)) + auto docs = documentation(indent.n + 1); + if (!as_generator(docs).generate(sink, field, context)) return false; if (!field.type.doc_summary.empty()) { - if (!as_generator(indent << scope_tab << "/// " << field.type.doc_summary << "\n").generate(sink, attributes::unused, context)) + if (!docs.generate_tag_value(sink, field.type.doc_summary, context)) return false; }