Terminal: Запись в неактивный экранный буфер нарушена

Созданный на 16 окт. 2018  ·  3Комментарии  ·  Источник: microsoft/terminal

Версия Windows 10.0.17763.1

Функция CreateConsoleScreenBuffer :

Консоль может иметь несколько экранных буферов, но только один активный экранный буфер. Неактивные экранные буферы доступны для чтения и записи, но отображается только активный экранный буфер . Чтобы сделать новый буфер экрана активным буфером экрана, используйте функцию SetConsoleActiveScreenBuffer.

Эта функциональность нарушена - текст, отправленный в неактивный экранный буфер, оказывается в активном и, таким образом, виден на экране.

В устаревшем режиме этого не происходит.

Минимальный проект для воспроизведения проблемы прилагается.

АльтернативныйScreenBufferBug.zip

Product-Conhost Resolution-Fix-Committed Work-Item

Самый полезный комментарий

Спасибо. К счастью/к сожалению, у вас все в порядке, и вы регистрируете ошибки быстрее, чем я успеваю их исследовать и исправлять.

Я зарегистрировал это внутри как MSFT: 19317384. Я займусь этим, когда у меня будет время.

Все 3 Комментарий

Спасибо. К счастью/к сожалению, у вас все в порядке, и вы регистрируете ошибки быстрее, чем я успеваю их исследовать и исправлять.

Я зарегистрировал это внутри как MSFT: 19317384. Я займусь этим, когда у меня будет время.

Стоит отметить, что это происходит только при запуске из Visual Studio, которая по умолчанию делает это через собственный помощник VsDebugConsole.exe.

В ПОРЯДКЕ. Я исследовал это, создал исправление, проверил его и проверил на сегодняшний день.

Я также установил вариант образца, который вы предоставили, в наш набор тестов функций, чтобы убедиться, что мы не испортим это снова в будущем. Или, по крайней мере, чтобы мы не испортили это очень специфическим образом. :П

Большое спасибо за предоставление минимального репродукционного кода. Это резко ускорило темпы, с которыми я мог исправить эту ошибку.

Он должен появиться в инсайдерских сборках примерно через 3 недели.

Была ли эта страница полезной?
0 / 5 - 0 рейтинги