patch 8.1.0550: expression evaluation may repeat an error message
Problem: Expression evaluation may repeat an error message. (Jason
Franklin)
Solution: Increment did_emsg and check for the value when giving an error
for the echo command.
diff --git a/src/message.c b/src/message.c
index c2318bd..5a990ff 100644
--- a/src/message.c
+++ b/src/message.c
@@ -636,7 +636,7 @@
if (cause_errthrow(s, severe, &ignore) == TRUE)
{
if (!ignore)
- did_emsg = TRUE;
+ ++did_emsg;
return TRUE;
}
@@ -689,7 +689,7 @@
beep_flush(); /* also includes flush_buffers() */
else
flush_buffers(FLUSH_MINIMAL); // flush internal buffers
- did_emsg = TRUE; // flag for DoOneCmd()
+ ++did_emsg; // flag for DoOneCmd()
#ifdef FEAT_EVAL
did_uncaught_emsg = TRUE;
#endif