X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/5aa59394dc172b205a0cc80315bc666a254507c0..cd2ad9a44df3771fcb118b6f132d30098529077b:/lunaix-os/kernel/peripheral/ps2kbd.c?ds=sidebyside diff --git a/lunaix-os/kernel/peripheral/ps2kbd.c b/lunaix-os/kernel/peripheral/ps2kbd.c index 6d27b10..6905b1e 100644 --- a/lunaix-os/kernel/peripheral/ps2kbd.c +++ b/lunaix-os/kernel/peripheral/ps2kbd.c @@ -427,11 +427,9 @@ kbd_recv_key(struct kdb_keyinfo_pkt* key_event) if (!key_buf.buffered_len) { return 0; } - mutex_lock(&key_buf.mutex); - - struct kdb_keyinfo_pkt* pkt_current = &key_buf.buffer[key_buf.read_ptr]; - *key_event = *pkt_current; + mutex_lock(&key_buf.mutex); + *key_event = key_buf.buffer[key_buf.read_ptr]; key_buf.buffered_len--; key_buf.read_ptr = (key_buf.read_ptr + 1) % PS2_KBD_RECV_BUFFER_SIZE;