patch 8.0.0592: if a job writes to a buffer screen is not updated

Problem:    If a job writes to a buffer and the user is typing a command, the
            screen isn't updated. When a message is displayed the changed
            buffer may cause it to be cleared. (Ramel Eshed)
Solution:   Update the screen and then the command line if the screen didn't
            scroll. Avoid inserting screen lines, as it clears any message.
            Update the status line when the buffer changed.
diff --git a/src/ex_getln.c b/src/ex_getln.c
index c42abe9..c7a6d85 100644
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -3337,10 +3337,17 @@
     void
 redrawcmdline(void)
 {
+    redrawcmdline_ex(TRUE);
+}
+
+    void
+redrawcmdline_ex(int do_compute_cmdrow)
+{
     if (cmd_silent)
 	return;
     need_wait_return = FALSE;
-    compute_cmdrow();
+    if (do_compute_cmdrow)
+	compute_cmdrow();
     redrawcmd();
     cursorcmd();
 }