Kernel: Cleanup ANSI DSR

This commit is contained in:
Bananymous 2025-06-19 19:05:49 +03:00
parent fff16f6b8c
commit 3283359ac8
1 changed files with 6 additions and 7 deletions

View File

@ -403,7 +403,7 @@ namespace Kernel
return; return;
} }
reset_ansi(); reset_ansi();
dprintln_if(DEBUG_VTTY, "invalid ANSI CSI ?"); dprintln_if(DEBUG_VTTY, "Invalid ANSI CSI ?");
return; return;
case 'h': case 'h':
case 'l': case 'l':
@ -413,16 +413,15 @@ namespace Kernel
return reset_ansi(); return reset_ansi();
} }
reset_ansi(); reset_ansi();
dprintln_if(DEBUG_VTTY, "invalid ANSI CSI character {}", static_cast<char>(ch)); dprintln_if(DEBUG_VTTY, "Unsupported ANSI CSI character {}", static_cast<char>(ch));
return; return;
case 'n': case 'n':
if (m_ansi_state.nums[0] == 6) if (m_ansi_state.nums[0] == 6)
{ {
char buffer[2 + 10 + 1 + 10 + 1]; BAN::Formatter::print(
size_t len = 0; [this](char ch) { handle_input_byte(ch); },
BAN::Formatter::print([&](char ch) { buffer[len++] = ch; }, "\e[{};{}R", m_row + 1, m_column + 1); "\e[{};{}R", m_row + 1, m_column + 1
for (size_t i = 0; i < len; i++) );
handle_input_byte(buffer[i]);
return reset_ansi(); return reset_ansi();
}; };
reset_ansi(); reset_ansi();