diff --git a/src/SharpIDE.Photino/Components/TerminalOutputDisplay.razor b/src/SharpIDE.Photino/Components/TerminalOutputDisplay.razor index 9f304f9..800af53 100644 --- a/src/SharpIDE.Photino/Components/TerminalOutputDisplay.razor +++ b/src/SharpIDE.Photino/Components/TerminalOutputDisplay.razor @@ -30,10 +30,20 @@ protected override async Task OnInitializedAsync() { BuildService.BuildStarted += ClearPreviousOutput; - await foreach (var logLine in BuildService.BuildTextWriter.ConsoleChannel.Reader.ReadAllAsync()) + _ = Task.Run(async () => { - await _terminalRef.Write(logLine); - } + try + { + await foreach (var logLine in BuildService.BuildTextWriter.ConsoleChannel.Reader.ReadAllAsync()) + { + await _terminalRef.Write(logLine); + } + } + catch (Exception e) + { + await DispatchExceptionAsync(e); + } + }); } private async Task ClearPreviousOutput()