Another minor fix - do not draw positions that are under the popup with
authornicm <nicm@openbsd.org>
Fri, 6 Aug 2021 07:32:21 +0000 (07:32 +0000)
committernicm <nicm@openbsd.org>
Fri, 6 Aug 2021 07:32:21 +0000 (07:32 +0000)
spaces, from Anindya Mukherjee. Also a typo fix from Linus Arver.

usr.bin/tmux/screen-write.c
usr.bin/tmux/tty.c

index b83cce1..254b54b 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: screen-write.c,v 1.194 2021/06/10 07:43:44 nicm Exp $ */
+/* $OpenBSD: screen-write.c,v 1.195 2021/08/06 07:32:21 nicm Exp $ */
 
 /*
  * Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -596,7 +596,7 @@ screen_write_hline(struct screen_write_ctx *ctx, u_int nx, int left, int right)
        screen_write_set_cursor(ctx, cx, cy);
 }
 
-/* Draw a horizontal line on screen. */
+/* Draw a vertical line on screen. */
 void
 screen_write_vline(struct screen_write_ctx *ctx, u_int ny, int top, int bottom)
 {
index bd42793..801c1e8 100644 (file)
@@ -1,4 +1,4 @@
-/* $OpenBSD: tty.c,v 1.396 2021/08/06 03:29:15 nicm Exp $ */
+/* $OpenBSD: tty.c,v 1.397 2021/08/06 07:32:21 nicm Exp $ */
 
 /*
  * Copyright (c) 2007 Nicholas Marriott <nicholas.marriott@gmail.com>
@@ -1463,9 +1463,15 @@ tty_draw_line(struct tty *tty, struct screen *s, u_int px, u_int py, u_int nx,
                                tty_attributes(tty, &last, defaults, palette);
                                tty_cursor(tty, atx + ux, aty);
                                for (j = 0; j < gcp->data.width; j++) {
-                                       if (ux + j > nx)
+                                       if (ux > nx)
                                                break;
-                                       tty_putc(tty, ' ');
+                                       if (tty_check_overlay(tty, atx + ux,
+                                           aty))
+                                               tty_putc(tty, ' ');
+                                       else {
+                                               tty_cursor(tty, atx + ux + 1,
+                                                   aty);
+                                       }
                                        ux++;
                                }
                        }