microsoft/Terminal

Tab exits with code 1 when Console.SetBufferSize has been modified and you maximize window

オープン

#7,581 opened on 2020/09/09

 (3 件のコメント) (0 件のリアクション) (0 人の担当者)C++ (9,275 件のフォーク)batch import
Area-OutputArea-ServerHelp WantedIssue-BugPriority-2Product-ConptySeverity-Crash

Repository metrics

Stars
 (103,173 個のスター)
PR merge metrics
 (平均マージ 27d 19h) (30d で 24 merged PRs)

説明

Possibly related to #1461. I understand the text rendering errors, but the process exiting is different.

When I set the console buffer size to maximum height and run my code from Windows Terminal (in non-maximized, 'windowed' mode), everything appears to work correctly. Windows Terminal honors the buffer-size that I've set, and I can scroll back in history appropriately.

If I maximize that window after running the program, the tab process exits with code 1.

A small C# program that reproduces this issue:

    static void Main(string[] args)
    {
      Console.SetBufferSize(Console.BufferWidth, 32766);
      Console.WriteLine("Buffer size changed.");

      // 100 lines is roughly the minimum it takes to crash the tab. Small behavior changes
      // depending on my initial window size. 
      for (int i = 0; i < 100; i++)
      {
        Console.WriteLine("Line");
      }
    }

image

Windows Version 2004, OS Build 19041.450 Windows Terminal Version 1.2.2381.0

コントリビューターガイド