diff options
author | yokota <yokota@FreeBSD.org> | 1999-12-05 10:04:37 +0000 |
---|---|---|
committer | yokota <yokota@FreeBSD.org> | 1999-12-05 10:04:37 +0000 |
commit | c37843e93488266dfdbab4cf10bf09422b315941 (patch) | |
tree | 3664387dffcf844036f6419bac3a56debd852280 /sys/dev/syscons/syscons.c | |
parent | 13f3486dd25f1aa7dd7808f2a3309dba80decc47 (diff) | |
download | FreeBSD-src-c37843e93488266dfdbab4cf10bf09422b315941.zip FreeBSD-src-c37843e93488266dfdbab4cf10bf09422b315941.tar.gz |
Fix cursor position calculation.
Submitted by: Cejka Rudolf <cejkar@dcse.fee.vutbr.cz>
Diffstat (limited to 'sys/dev/syscons/syscons.c')
-rw-r--r-- | sys/dev/syscons/syscons.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/sys/dev/syscons/syscons.c b/sys/dev/syscons/syscons.c index 48ac62f..f3ffa83 100644 --- a/sys/dev/syscons/syscons.c +++ b/sys/dev/syscons/syscons.c @@ -2946,11 +2946,12 @@ outloop: case 0x09: /* non-destructive tab */ mark_for_update(scp, scp->cursor_pos); scp->cursor_pos += (8 - scp->xpos % 8u); - mark_for_update(scp, scp->cursor_pos); if ((scp->xpos += (8 - scp->xpos % 8u)) >= scp->xsize) { scp->xpos = 0; scp->ypos++; + scp->cursor_pos = scp->xsize * scp->ypos; } + mark_for_update(scp, scp->cursor_pos); break; case 0x0a: /* newline, same pos */ |