From e4a974c7cc6dea53b9457bbd29a4e48f221720cb Mon Sep 17 00:00:00 2001 From: Victor Adam Date: Wed, 17 Jun 2015 11:38:47 +0200 Subject: plines_win_nofold(): Ignore virtcols after 32000th computation #3527 Avoid crashing or hanging when editing a file than contains ludicrously long lines (more than 100,000,000 virtual columns). The change is in plines_win_nofold, which is called by wrapping and folding code. As a result, wrapping and folding may be done incorrectly when the UI is capable of rendering more than 32000 characters at a time (tiny font). fixes #2838 --- src/nvim/misc1.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src') diff --git a/src/nvim/misc1.c b/src/nvim/misc1.c index 5270687a4d..2f02985875 100644 --- a/src/nvim/misc1.c +++ b/src/nvim/misc1.c @@ -1273,7 +1273,7 @@ int plines_win_nofold(win_T *wp, linenr_T lnum) * Add column offset for 'number', 'relativenumber' and 'foldcolumn'. */ width = wp->w_width - win_col_off(wp); - if (width <= 0) { + if (width <= 0 || col > 32000) { return 32000; // bigger than the number of lines of the screen } if (col <= (unsigned int)width) { -- cgit