diff --git a/kitty/screen.c b/kitty/screen.c index 94688f1ef..64a73f599 100644 --- a/kitty/screen.c +++ b/kitty/screen.c @@ -1695,8 +1695,7 @@ static inline void apply_selection(Screen *self, uint8_t *data, const Selection *s, IterationData *last_rendered, uint8_t set_mask) { iteration_data(self, s, last_rendered, 0, true); - for (int y = last_rendered->y; y < last_rendered->y_limit; y++) { - if (y > (int)self->lines - 1) break; + for (int y = last_rendered->y; y < last_rendered->y_limit && y < (int)self->lines; y++) { Line *line = visual_line_(self, y); uint8_t *line_start = data + self->columns * y; XRange xr = xrange_for_iteration(last_rendered, y, line);