patch 8.1.0399: 'hlsearch' highlight remains in other window

Problem:    'hlsearch' highlight remains in other window after cancelling
            command.
Solution:   Redraw all windows. Also remove unnecessary delays. (closes #3437)
diff --git a/src/ex_getln.c b/src/ex_getln.c
index 8f38331..c2c7453 100644
--- a/src/ex_getln.c
+++ b/src/ex_getln.c
@@ -445,10 +445,9 @@
 	p_magic = is_state->magic_save;
 
 	validate_cursor();	/* needed for TAB */
+	redraw_all_later(SOME_VALID);
 	if (call_update_screen)
 	    update_screen(SOME_VALID);
-	else
-	    redraw_all_later(SOME_VALID);
     }
 }
 
@@ -589,8 +588,11 @@
     {
 	next_char = ccline.cmdbuff[skiplen + patlen];
 	ccline.cmdbuff[skiplen + patlen] = NUL;
-	if (empty_pattern(ccline.cmdbuff))
+	if (empty_pattern(ccline.cmdbuff) && !no_hlsearch)
+	{
+	    redraw_all_later(SOME_VALID);
 	    set_no_hlsearch(TRUE);
+	}
 	ccline.cmdbuff[skiplen + patlen] = next_char;
     }