Skip to content

Commit 28c3767

Browse files
committed
Add guard against NRE in MyCodeBlock and HtmlBlockRenderer
1 parent c19046b commit 28c3767

File tree

2 files changed

+21
-15
lines changed

2 files changed

+21
-15
lines changed

components/MarkdownTextBlock/src/Renderers/ObjectRenderers/HtmlBlockRenderer.cs

Lines changed: 8 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,14 +15,17 @@ protected override void Write(WinUIRenderer renderer, HtmlBlock obj)
1515
if (obj == null) throw new ArgumentNullException(nameof(obj));
1616

1717
var stringBuilder = new StringBuilder();
18-
foreach (var line in obj.Lines.Lines)
18+
if (obj.Lines.Lines != null)
1919
{
20-
var lineText = line.Slice.ToString().Trim();
21-
if (String.IsNullOrWhiteSpace(lineText))
20+
foreach (var line in obj.Lines.Lines)
2221
{
23-
continue;
22+
var lineText = line.Slice.ToString().Trim();
23+
if (String.IsNullOrWhiteSpace(lineText))
24+
{
25+
continue;
26+
}
27+
stringBuilder.AppendLine(lineText);
2428
}
25-
stringBuilder.AppendLine(lineText);
2629
}
2730

2831
var html = Regex.Replace(stringBuilder.ToString(), @"\t|\n|\r", "", RegexOptions.Compiled);

components/MarkdownTextBlock/src/TextElements/MyCodeBlock.cs

Lines changed: 13 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -75,20 +75,23 @@ public MyCodeBlock(CodeBlock codeBlock, MarkdownConfig config)
7575
{
7676
#endif
7777

78-
foreach (var line in codeBlock.Lines.Lines)
78+
if (codeBlock.Lines.Lines != null)
7979
{
80-
var paragraph = new Paragraph();
81-
var lineString = line.ToString();
82-
if (!String.IsNullOrWhiteSpace(lineString))
80+
foreach (var line in codeBlock.Lines.Lines)
8381
{
84-
paragraph.Inlines.Add(new Run() { Text = lineString });
82+
var paragraph = new Paragraph();
83+
var lineString = line.ToString();
84+
if (!String.IsNullOrWhiteSpace(lineString))
85+
{
86+
paragraph.Inlines.Add(new Run() { Text = lineString });
87+
}
88+
richTextBlock.Blocks.Add(paragraph);
8589
}
86-
richTextBlock.Blocks.Add(paragraph);
90+
91+
border.Child = richTextBlock;
92+
container.Child = border;
93+
_paragraph.Inlines.Add(container);
8794
}
88-
89-
border.Child = richTextBlock;
90-
container.Child = border;
91-
_paragraph.Inlines.Add(container);
9295
}
9396

9497
public void AddChild(IAddChild child) {}

0 commit comments

Comments
 (0)