diff --git a/windows/windows_mphal.c b/windows/windows_mphal.c
index db03571baa510f66bbc2cacb885ade9b521ba903..2a803f108973eb2b10db7902e0390290272b6ed3 100644
--- a/windows/windows_mphal.c
+++ b/windows/windows_mphal.c
@@ -96,10 +96,9 @@ void mp_hal_erase_line_from_cursor(uint n_chars_to_erase) {
     assure_conout_handle();
     CONSOLE_SCREEN_BUFFER_INFO info;
     GetConsoleScreenBufferInfo(con_out, &info);
-    const short len = info.dwSize.X - info.dwCursorPosition.X;
     DWORD written;
-    FillConsoleOutputCharacter(con_out, ' ', len, info.dwCursorPosition, &written);
-    FillConsoleOutputAttribute(con_out, info.wAttributes, len, info.dwCursorPosition, &written);
+    FillConsoleOutputCharacter(con_out, ' ', n_chars_to_erase, info.dwCursorPosition, &written);
+    FillConsoleOutputAttribute(con_out, info.wAttributes, n_chars_to_erase, info.dwCursorPosition, &written);
 }
 
 typedef struct item_t {