| 38 |
|
|
| 39 |
#define STR_TOP_LEFT_MAX_LEN 80 |
#define STR_TOP_LEFT_MAX_LEN 80 |
| 40 |
#define STR_TOP_MIDDLE_MAX_LEN 40 |
#define STR_TOP_MIDDLE_MAX_LEN 40 |
| 41 |
#define STR_TOP_RIGHT_MAX_LEN 40 |
#define STR_TOP_RIGHT_MAX_LEN 80 |
| 42 |
|
|
| 43 |
static const char *get_time_str(char *s, size_t len) |
static const char *get_time_str(char *s, size_t len) |
| 44 |
{ |
{ |
| 653 |
ch = igetch_t(MAX_DELAY_TIME); |
ch = igetch_t(MAX_DELAY_TIME); |
| 654 |
input_ok = 1; |
input_ok = 1; |
| 655 |
|
|
| 656 |
|
if (ch != KEY_NULL && ch != KEY_TIMEOUT) |
| 657 |
|
{ |
| 658 |
|
BBS_last_access_tm = time(NULL); |
| 659 |
|
} |
| 660 |
|
|
| 661 |
// extended key handler |
// extended key handler |
| 662 |
if (key_handler(&ch, &ctx) != 0) |
if (key_handler(&ch, &ctx) != 0) |
| 663 |
{ |
{ |
| 667 |
switch (ch) |
switch (ch) |
| 668 |
{ |
{ |
| 669 |
case KEY_NULL: |
case KEY_NULL: |
| 670 |
|
log_error("KEY_NULL\n"); |
| 671 |
|
goto cleanup; |
| 672 |
case KEY_TIMEOUT: |
case KEY_TIMEOUT: |
| 673 |
|
log_error("User input timeout\n"); |
| 674 |
goto cleanup; |
goto cleanup; |
| 675 |
case KEY_HOME: |
case KEY_HOME: |
| 676 |
if (line_current - output_current_row < 0) // Reach begin |
if (line_current - output_current_row < 0) // Reach begin |
| 773 |
input_ok = 0; |
input_ok = 0; |
| 774 |
break; |
break; |
| 775 |
} |
} |
|
|
|
|
BBS_last_access_tm = time(NULL); |
|
| 776 |
} |
} |
| 777 |
|
|
| 778 |
continue; |
continue; |