diff --git a/src/terminal/parser/OutputStateMachineEngine.cpp b/src/terminal/parser/OutputStateMachineEngine.cpp index a17699a5247..be3e1b0d604 100644 --- a/src/terminal/parser/OutputStateMachineEngine.cpp +++ b/src/terminal/parser/OutputStateMachineEngine.cpp @@ -44,6 +44,17 @@ bool OutputStateMachineEngine::ActionExecute(const wchar_t wch) { _dispatch->Execute(wch); _ClearLastChar(); + + if (wch == AsciiChars::BEL) + { + // microsoft/terminal#2952 + // If we're attached to a terminal, let's also pass the BEL through. + if (_pfnFlushToTerminal != nullptr) + { + _pfnFlushToTerminal(); + } + } + return true; }