Changeset 3691
- Timestamp:
- 10/23/08 14:22:24 (3 months ago)
- Files:
-
- 1 modified
-
trunk/payloads/libpayload/curses/keyboard.c (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/payloads/libpayload/curses/keyboard.c
r3662 r3691 51 51 pass it to dedicated vt100 code */ 52 52 53 static int getkeyseq(char *buffer, int len )53 static int getkeyseq(char *buffer, int len, int max) 54 54 { 55 55 int i; 56 56 57 for(i = 0; i < 75; i++) { 58 if (serial_havechar()) 59 break; 60 mdelay(1); 57 while (1) { 58 for(i = 0; i < 75; i++) { 59 if (serial_havechar()) 60 break; 61 mdelay(1); 62 } 63 64 if (i == 75) 65 return len; 66 67 buffer[len++] = serial_getchar(); 68 if (len == max) 69 return len; 61 70 } 62 63 if (i == 75)64 return len;65 66 buffer[len++] = serial_getchar();67 return getkeyseq(buffer, len);68 71 } 69 72 … … 100 103 { 101 104 char buffer[5]; 102 int len = getkeyseq(buffer, 0 );105 int len = getkeyseq(buffer, 0, sizeof(buffer)); 103 106 int i, t; 104 107
