diff --git a/Kernel/Devices/HID/PS2KeyboardDevice.cpp b/Kernel/Devices/HID/PS2KeyboardDevice.cpp index 8df0dced28..4504eb8906 100644 --- a/Kernel/Devices/HID/PS2KeyboardDevice.cpp +++ b/Kernel/Devices/HID/PS2KeyboardDevice.cpp @@ -16,6 +16,7 @@ #include #include #include +#include namespace Kernel { @@ -70,7 +71,9 @@ void PS2KeyboardDevice::irq_handle_byte_read(u8 byte) if (m_modifiers & Mod_Alt) { switch (ch) { case 0x02 ... 0x07: // 1 to 6 - ConsoleManagement::the().switch_to(ch - 0x02); + g_io_work->queue([this, ch]() { + ConsoleManagement::the().switch_to(ch - 0x02); + }); break; default: key_state_changed(ch, pressed);