Bug 49878

Summary: Вывод в stdout с переопределением спецсимволов в консоли "ломает" шрифты
Product: Sisyphus Reporter: Vera Blagoveschenskaya <vercha>
Component: ncursesAssignee: Fr. Br. George <george>
Status: CLOSED NOTABUG QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: george, iv, jqt4, ldv, liannnix, sin
Version: unstable   
Hardware: x86_64   
OS: Linux   
Attachments:
Description Flags
screen none

Description Vera Blagoveschenskaya 2024-04-03 13:04:16 MSK
Created attachment 15778 [details]
screen

Стенд в тестировании:
Server 10.2 x86_64
Workstation 10.2 x86_64
ncurses-6.3.20220618-alt4

1) Перейти на консоль (например tty2)
2) Выполнить вывод данных на экран с переопределением спецсимволов в консоли, например:
# cat /dev/sda

Результат: "ломается" шрифт в консоли (буквы заменились на спецсимволы, псевдографику).

Если выполнить команду 
# reset
то шрифты приходят в норму

Является ли описанное поведение корректным?

Дополнительно: при необходимости прошу перевесить ошибку на правильный компонент
Comment 1 Evgeny Sinelnikov 2024-04-03 13:54:49 MSK
Ожидаемым оно точно является.

Сайд-эффектов огромное количество можно словить. Но есть ли тут "защита от дурака"? Можно поразбираться, конечно...

И, обычно да, команда reset помогает.

_______________

А какое у вас ожидание-то? Выдали в консоль содержимое диска, где вполне можно получить управляющие символы терминала и... Что ожидали-то?

Что терминал догадается, что ему подсунули с той стороны через pipe не обычный файл, а диск (кстати, можно такое и на обычном файле организовать) и сделал что?

______________

Конструктивно, состояние терминала и управляющие символы к нему - это история, которую нужно отдельно изучать. Что там происходит - дело темное. Разбираться с этим вопросом - это задача того, кто готов во всё это погрузиться. Мейнтейнеры ncurses, screen, tmux и других терминальных штук приглашаются.

liannnix@, есть интерес?

______________

Конкретно по данной задаче. Не вижу проблемы. Дайте, хотя бы контр-пример. А бывает, вообще, такое, чтобы переопределением спецсимволов в консоль ничего не ломало?

Похоже, эта задача создана, чтобы разработчики объяснили причину непонятного, выявленного поведения. Такое лучше писать и обсуждать в рассылках community@, sysadmins@ или devel-newbies@:
- https://lists.altlinux.org/mailman/listinfo/community
- https://lists.altlinux.org/mailman/listinfo/sysadmins
- https://lists.altlinux.org/mailman/listinfo/devel-newbies

Вообще, это одна из многих аналогичных, известных опасных особенностей поведения, вроде 'rm - rf /':
- https://phoenixnap.com/kb/dangerous-linux-terminal-commands

_________________

Кратко.
 - Такое поведение выглядит нормальным. 
 - Для продолжения необходимы технические предложения или, хотя бы ожидания, а лучше практические контр-примеры, если найдутся.
 - Обсуждения такого характера принято вести не в багзиле, в виде непонятных претензий к поведению, а в рассылках.
 - В багзиле же стоит вести уже разобранное техническое предложение со ссылкой на оригинальное обсуждение в рассылке.