From 7902726239f96cafef74bcadf590693d99daeedf Mon Sep 17 00:00:00 2001 From: EnderIce2 Date: Thu, 17 Apr 2025 15:56:16 +0000 Subject: [PATCH] fix(kernel/tty): wrong calculation of cell index Instead of ws_row, now it's ws_col. --- Kernel/core/console.cpp | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/Kernel/core/console.cpp b/Kernel/core/console.cpp index 7035c653..6ee53f0c 100644 --- a/Kernel/core/console.cpp +++ b/Kernel/core/console.cpp @@ -123,7 +123,8 @@ namespace KernelConsole ConsoleTerminal *term = CurrentTerminal.load(); ConsoleTerminal::Blinker &blinker = term->Blink; - TerminalCell *cell = term->Term->GetCell(Renderer.Cursor.X + Renderer.Cursor.Y * term->Term->GetWinsize()->ws_row); + size_t cellIndex = Renderer.Cursor.Y * term->Term->GetWinsize()->ws_col + Renderer.Cursor.X; + TerminalCell *cell = term->Term->GetCell(cellIndex); uint32_t bgColor = cell->attr.Bright ? TermBrightColors[cell->attr.Background] : TermColors[cell->attr.Background]; Renderer.Paint(Renderer.Cursor.X, Renderer.Cursor.Y, blinker.Character, Enable ? blinker.Color : bgColor, bgColor); }