Problem: Complicated 'statusline' causes a crash. (Christian Brabandt)
Solution: Check that the number of items is not too big.
prevchar_isitem = FALSE;
for (s = usefmt; *s; )
{
+ if (curitem == STL_MAX_ITEM)
+ {
+ /* There are too many items. Add the error code to the statusline
+ * to give the user a hint about what went wrong. */
+ if (p + 6 < out + outlen)
+ {
+ mch_memmove(p, " E541", (size_t)5);
+ p += 5;
+ }
+ break;
+ }
+
if (*s != NUL && *s != '%')
prevchar_isflag = prevchar_isitem = FALSE;
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 121,
/**/
120,
/**/