File tree Expand file tree Collapse file tree 2 files changed +14
-1
lines changed
Expand file tree Collapse file tree 2 files changed +14
-1
lines changed Original file line number Diff line number Diff line change @@ -6653,6 +6653,7 @@ win_redr_custom(wp, draw_ruler)
66536653 win_T * wp ;
66546654 int draw_ruler ; /* TRUE or FALSE */
66556655{
6656+ static int entered = FALSE;
66566657 int attr ;
66576658 int curattr ;
66586659 int row ;
@@ -6671,6 +6672,13 @@ win_redr_custom(wp, draw_ruler)
66716672 win_T * ewp ;
66726673 int p_crb_save ;
66736674
6675+ /* There is a tiny chance that this gets called recursively: When
6676+ * redrawing a status line triggers redrawing the ruler or tabline.
6677+ * Avoid trouble by not allowing recursion. */
6678+ if (entered )
6679+ return ;
6680+ entered = TRUE;
6681+
66746682 /* setup environment for the task at hand */
66756683 if (wp == NULL )
66766684 {
@@ -6746,7 +6754,7 @@ win_redr_custom(wp, draw_ruler)
67466754 }
67476755
67486756 if (maxwidth <= 0 )
6749- return ;
6757+ goto theend ;
67506758
67516759 /* Temporarily reset 'cursorbind', we don't want a side effect from moving
67526760 * the cursor away and back. */
@@ -6827,6 +6835,9 @@ win_redr_custom(wp, draw_ruler)
68276835 while (col < Columns )
68286836 TabPageIdxs [col ++ ] = fillchar ;
68296837 }
6838+
6839+ theend :
6840+ entered = FALSE;
68306841}
68316842
68326843#endif /* FEAT_STL_OPT */
Original file line number Diff line number Diff line change @@ -738,6 +738,8 @@ static char *(features[]) =
738738
739739static int included_patches [] =
740740{ /* Add new patch number below this line */
741+ /**/
742+ 118 ,
741743/**/
742744 117 ,
743745/**/
You can’t perform that action at this time.
0 commit comments