microsoft/Terminal

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

Open

#7,581 创建于 2020年9月9日

在 GitHub 查看
 (3 评论) (0 反应) (0 负责人)C++ (3,212 fork)batch import
Area-OutputArea-ServerHelp WantedIssue-BugPriority-2Product-ConptySeverity-Crash

仓库指标

Star
 (35,764 star)
PR 合并指标
 (平均合并 27天 19小时) (30 天内合并 24 个 PR)

描述

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

贡献者指南