From 9592b74355ec63de9b1f927598ec6fb0cb2c4ef7 Mon Sep 17 00:00:00 2001 From: Matheus Date: Mon, 29 Jun 2026 01:21:49 -0300 Subject: [PATCH] console: don't accept new input events if locked --- kernel-src/io/console.c | 3 +++ recipes/astral | 2 +- 2 files changed, 4 insertions(+), 1 deletion(-) diff --git a/kernel-src/io/console.c b/kernel-src/io/console.c index 7d98191d..7c8b0ceb 100644 --- a/kernel-src/io/console.c +++ b/kernel-src/io/console.c @@ -53,6 +53,9 @@ size_t console_write(char *str, size_t count) { } void console_process_events(input_event_t *events, int count) { + if (__atomic_load_n(&locked, __ATOMIC_RELAXED)) + return; + long ipl = spinlock_acquire_raise_ipl(&input_buffer_lock, IPL_INPUT); for (int i = 0; i < count; ++i) { if (events[i].type != INPUT_EV_KEY || events[i].code >= INPUT_KEY_BTN_LEFT) diff --git a/recipes/astral b/recipes/astral index 8343317c..a81ec732 100644 --- a/recipes/astral +++ b/recipes/astral @@ -1,5 +1,5 @@ name=astral -revision=16 +revision=17 from_source=astral imagedeps="build-essential nasm" hostdeps="xgcc xbinutils limine"