Explorar el Código

fix: vga vbuffer overflow

greatbridf hace 3 años
padre
commit
bf43fc164f
Se han modificado 1 ficheros con 3 adiciones y 0 borrados
  1. 3 0
      src/kernel/vga.c

+ 3 - 0
src/kernel/vga.c

@@ -20,6 +20,9 @@ void vga_new_line()
     int32_t offset = p_vga_head - VGA_MEM;
     offset %= VGA_SCREEN_WIDTH_IN_CHARS;
     p_vga_head += (VGA_SCREEN_WIDTH_IN_CHARS - offset);
+    if ((p_vga_head - VGA_MEM) >= 80 * 25) {
+        p_vga_head = VGA_MEM;
+    }
 }
 
 void vga_printk(const char* str, uint8_t color)