summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--screen-write.c7
1 files changed, 6 insertions, 1 deletions
diff --git a/screen-write.c b/screen-write.c
index e8aa0973..a6e78f42 100644
--- a/screen-write.c
+++ b/screen-write.c
@@ -75,7 +75,7 @@ screen_write_set_cursor(struct screen_write_ctx *ctx, int cx, int cy)
return;
if (cx != -1) {
- if ((u_int)cx > screen_size_x(s) - 1)
+ if ((u_int)cx > screen_size_x(s)) /* allow last column */
cx = screen_size_x(s) - 1;
s->cx = cx;
}
@@ -1045,6 +1045,11 @@ screen_write_cursormove(struct screen_write_ctx *ctx, u_int px, u_int py)
py += s->rupper;
}
+ if (px > screen_size_x(s) - 1)
+ px = screen_size_x(s) - 1;
+ if (py > screen_size_y(s) - 1)
+ py = screen_size_y(s) - 1;
+
screen_write_set_cursor(ctx, px, py);
}