Guest User

Untitled

a guest
Sep 7th, 2022
150
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 1.20 KB | None | 0 0
  1. diff --git a/src/keysc/getkey.c b/src/keysc/getkey.c
  2. index c1a28e4..256b010 100644
  3. --- a/src/keysc/getkey.c
  4. +++ b/src/keysc/getkey.c
  5. @@ -36,7 +36,11 @@ key_event_t getkey_opt(int opt, volatile int *timeout)
  6.         while(1)
  7.         {
  8.                 e = keydev_read(d);
  9. -               if(e.type == KEYEV_NONE && timeout && *timeout) break;
  10. +               if(e.type == KEYEV_NONE)
  11. +               {
  12. +                       if(timeout && *timeout) break;
  13. +                       continue;
  14. +               }
  15.  
  16.                 /* Skip repeat events that are not enabled by options */
  17.                 if(e.type == KEYEV_HOLD && !(opt & GETKEY_REP_ALL))
  18. diff --git a/src/keysc/keydev.c b/src/keysc/keydev.c
  19. index d797739..6d241fb 100644
  20. --- a/src/keysc/keydev.c
  21. +++ b/src/keysc/keydev.c
  22. @@ -6,6 +6,7 @@
  23.  #include <gint/drivers/keydev.h>
  24.  #include <gint/defs/types.h>
  25.  #include <gint/defs/util.h>
  26. +#include <gint/cpu.h>
  27.  
  28.  #include <string.h>
  29.  #include <stdarg.h>
  30. @@ -246,6 +247,7 @@ key_event_t keydev_read(keydev_t *d)
  31.  
  32.         while(1)
  33.         {
  34. +               sleep();
  35.                 e = keydev_unqueue_event(d);
  36.                 if(e.type == KEYEV_NONE)
  37.                         return e;
  38.  
Advertisement
Add Comment
Please, Sign In to add comment