There is no point in keeping a bunch of different text buffers for each

line when writing, we only need one as big as the line width - there
can't be any more text than that since newer will overwrite older.
This commit is contained in:
nicm
2020-04-18 15:12:28 +00:00
parent 4a93294152
commit ea5fdd5331
3 changed files with 57 additions and 21 deletions

4
tmux.h
View File

@ -769,6 +769,8 @@ struct screen {
bitstr_t *tabs;
struct screen_sel *sel;
struct screen_write_collect_line *write_list;
};
/* Screen write context. */
@ -2380,6 +2382,8 @@ void grid_view_delete_cells(struct grid *, u_int, u_int, u_int, u_int);
char *grid_view_string_cells(struct grid *, u_int, u_int, u_int);
/* screen-write.c */
void screen_write_make_list(struct screen *);
void screen_write_free_list(struct screen *);
void screen_write_start(struct screen_write_ctx *, struct window_pane *,
struct screen *);
void screen_write_stop(struct screen_write_ctx *);