Problem: It's possible that redrawing the status lines causes
win_redr_custom() to be called recursively.
Solution: Protect against recursiveness. (Yasuhiro Matsumoto)
win_T *wp;
int draw_ruler; /* TRUE or FALSE */
{
+ static int entered = FALSE;
int attr;
int curattr;
int row;
win_T *ewp;
int p_crb_save;
+ /* There is a tiny chance that this gets called recursively: When
+ * redrawing a status line triggers redrawing the ruler or tabline.
+ * Avoid trouble by not allowing recursion. */
+ if (entered)
+ return;
+ entered = TRUE;
+
/* setup environment for the task at hand */
if (wp == NULL)
{
}
if (maxwidth <= 0)
- return;
+ goto theend;
/* Temporarily reset 'cursorbind', we don't want a side effect from moving
* the cursor away and back. */
while (col < Columns)
TabPageIdxs[col++] = fillchar;
}
+
+theend:
+ entered = FALSE;
}
#endif /* FEAT_STL_OPT */
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 118,
/**/
117,
/**/