diff --git a/PSReadLine/ReadLine.cs b/PSReadLine/ReadLine.cs index 02a0455b0..677025aab 100644 --- a/PSReadLine/ReadLine.cs +++ b/PSReadLine/ReadLine.cs @@ -43,6 +43,8 @@ public partial class PSConsoleReadLine : IPSConsoleReadLineMockableMethods #pragma warning restore CS0649 private bool _delayedOneTimeInitCompleted; + // This is used by AIShell to check if PSReadLine is initialized and ready to render. + private bool _readLineReady; private IPSConsoleReadLineMockableMethods _mockableMethods; private IConsole _console; @@ -400,6 +402,7 @@ public static string ReadLine( _singleton.Initialize(runspace, engineIntrinsics); } + _singleton._readLineReady = true; _singleton._cancelReadCancellationToken = cancellationToken; return _singleton.InputLoop(); } @@ -472,6 +475,8 @@ public static string ReadLine( } finally { + _singleton._readLineReady = false; + try { // If we are closing, restoring the old console settings isn't needed,