patch 8.2.0035: saving and restoring called_emsg is clumsy
Problem: Saving and restoring called_emsg is clumsy.
Solution: Count the number of error messages.
diff --git a/src/drawscreen.c b/src/drawscreen.c
index 3a88ee9..6b755c8 100644
--- a/src/drawscreen.c
+++ b/src/drawscreen.c
@@ -650,14 +650,12 @@
#ifdef FEAT_STL_OPT
if (*p_ruf)
{
- int save_called_emsg = called_emsg;
+ int called_emsg_before = called_emsg;
- called_emsg = FALSE;
win_redr_custom(wp, TRUE);
- if (called_emsg)
+ if (called_emsg > called_emsg_before)
set_string_option_direct((char_u *)"rulerformat", -1,
(char_u *)"", OPT_FREE, SID_ERROR);
- called_emsg |= save_called_emsg;
return;
}
#endif