Skip to content

Commit 45ef0bd

Browse files
committed
don't remove diagnostics
1 parent 39a7320 commit 45ef0bd

File tree

2 files changed

+16
-4
lines changed

2 files changed

+16
-4
lines changed

src/Elastic.Documentation/AppliesTo/ApplicableToParser.cs

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -38,9 +38,6 @@ public static class ApplicableToParser
3838
try
3939
{
4040
parsed = Deserializer.Deserialize<ApplicableTo>(yaml);
41-
// Clear diagnostics to avoid memory leaks
42-
if (parsed != null)
43-
parsed.Diagnostics = null;
4441
}
4542
catch
4643
{

src/Elastic.Markdown/Myst/Directives/DirectiveHtmlRenderer.cs

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -268,7 +268,22 @@ private static void WriteAppliesSwitch(HtmlRenderer renderer, AppliesSwitchBlock
268268
private static void WriteAppliesItem(HtmlRenderer renderer, AppliesItemBlock block)
269269
{
270270
// Parse the applies_to definition to get the ApplicableTo object
271-
var appliesTo = ApplicableToParser.ParseApplicableTo(block.AppliesToDefinition);
271+
ApplicableTo? appliesTo = null;
272+
try
273+
{
274+
appliesTo = ApplicableToParser.ParseApplicableTo(block.AppliesToDefinition);
275+
if (appliesTo?.Diagnostics is not null)
276+
{
277+
foreach (var (severity, message) in appliesTo.Diagnostics)
278+
block.Emit(severity, message);
279+
appliesTo.Diagnostics = null;
280+
}
281+
}
282+
catch (Exception e)
283+
{
284+
block.EmitError($"Unable to parse applies_to definition: {block.AppliesToDefinition}", e);
285+
}
286+
272287
var slice = AppliesItemView.Create(new AppliesItemViewModel
273288
{
274289
DirectiveBlock = block,

0 commit comments

Comments
 (0)