diff options
Diffstat (limited to 'sys/teken')
-rw-r--r-- | sys/teken/teken_subr.h | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/sys/teken/teken_subr.h b/sys/teken/teken_subr.h index c9dfa4d9bb92..8db1c024b310 100644 --- a/sys/teken/teken_subr.h +++ b/sys/teken/teken_subr.h @@ -372,7 +372,7 @@ teken_subr_cursor_up(teken_t *t, unsigned int nrows) } static void -teken_subr_set_cursor_style(teken_t *t, unsigned int style) +teken_subr_set_cursor_style(teken_t *t __unused, unsigned int style __unused) { /* TODO */ @@ -1000,7 +1000,7 @@ teken_subr_do_reset(teken_t *t) t->t_scrollreg.ts_begin = 0; t->t_scrollreg.ts_end = t->t_winsize.tp_row; t->t_originreg = t->t_scrollreg; - t->t_stateflags &= TS_8BIT|TS_CONS25; + t->t_stateflags &= TS_8BIT | TS_CONS25 | TS_CONS25KEYS; t->t_stateflags |= TS_AUTOWRAP; t->t_scs[0] = teken_scs_us_ascii; @@ -1337,8 +1337,11 @@ teken_subr_vertical_position_absolute(teken_t *t, unsigned int row) static void teken_subr_repeat_last_graphic_char(teken_t *t, unsigned int rpts) { + unsigned int max_repetitions; + max_repetitions = t->t_winsize.tp_row * t->t_winsize.tp_col; + if (rpts > max_repetitions) + rpts = max_repetitions; for (; t->t_last != 0 && rpts > 0; rpts--) teken_subr_regular_character(t, t->t_last); } - |