diff --git a/user/apps/shell/shell.c b/user/apps/shell/shell.c index dae09f58..9cdda33c 100644 --- a/user/apps/shell/shell.c +++ b/user/apps/shell/shell.c @@ -133,7 +133,6 @@ int shell_readline(int fd, char *buf) { int key = 0; int count = 0; - while (1) { key = keyboard_analyze_keycode(fd); diff --git a/user/libs/libKeyboard/keyboard.c b/user/libs/libKeyboard/keyboard.c index 58a41335..9000f495 100644 --- a/user/libs/libKeyboard/keyboard.c +++ b/user/libs/libKeyboard/keyboard.c @@ -427,6 +427,7 @@ int keyboard_analyze_keycode(int fd) case 0xc8: arrow_u = false; key = OTHER_KEY; + return 0xc8; break; case 0x4b: arrow_l = true; @@ -439,6 +440,7 @@ int keyboard_analyze_keycode(int fd) case 0x50: arrow_d = true; key = OTHER_KEY; + return 0x50; break; case 0xd0: arrow_d = false;