diff --git a/Makefile.am b/Makefile.am index d8da0959..b0244f0f 100644 --- a/Makefile.am +++ b/Makefile.am @@ -242,6 +242,7 @@ if ENABLE_SIXEL dist_tmux_SOURCES += image.c image-sixel.c endif +# Add bits for fuzzing if enabled. if NEED_FUZZING check_PROGRAMS = \ fuzz/input-fuzzer \ @@ -270,3 +271,7 @@ install-exec-hook: $(mkdir_p) $(DESTDIR)$(mandir)/man1 $(INSTALL_DATA) $(srcdir)/tmux.1.@MANFORMAT@ \ $(DESTDIR)$(mandir)/man1/tmux.1 + +# And uninstall it. +uninstall-hook: + rm -f $(DESTDIR)$(mandir)/man1/tmux.1 diff --git a/screen-write.c b/screen-write.c index a33e561a..952e05e9 100644 --- a/screen-write.c +++ b/screen-write.c @@ -2447,7 +2447,8 @@ screen_write_cell(struct screen_write_ctx *ctx, const struct grid_cell *gc) struct tty_ctx ttyctx; u_int sx = screen_size_x(s), sy = screen_size_y(s); u_int width = ud->width, xx, not_wrap, i, n, vis; - int selected, skip = 1, redraw = 0, yoff = 0; + int selected, skip = 1, redraw = 0; + int yoff = 0, xoff = 0; struct visible_ranges *r; struct visible_range *ri; @@ -2548,10 +2549,12 @@ screen_write_cell(struct screen_write_ctx *ctx, const struct grid_cell *gc) skip = 0; /* Get visible ranges for the character before moving the cursor. */ - if (wp != NULL) + if (wp != NULL) { + xoff = wp->xoff; yoff = wp->yoff; - r = screen_redraw_get_visible_ranges(wp, s->cx, s->cy + yoff, width, - NULL); + } + r = screen_redraw_get_visible_ranges(wp, xoff + s->cx, s->cy + yoff, + width, NULL); /* * Move the cursor. If not wrapping, stick at the last character and