patch 9.0.0308: when cmdheight is zero the attention prompt doesn't show
Problem: When cmdheight is zero the attention prompt doesn't show.
Solution: Do not use the message window for a prompt.
diff --git a/src/memline.c b/src/memline.c
index a495636..3911213 100644
--- a/src/memline.c
+++ b/src/memline.c
@@ -4640,6 +4640,7 @@
stat_T st;
time_t swap_mtime;
+ dont_use_message_window();
++no_wait_return;
(void)emsg(_(e_attention));
msg_puts(_("\nFound a swap file by the name \""));
diff --git a/src/message.c b/src/message.c
index c6fbfbd..096f274 100644
--- a/src/message.c
+++ b/src/message.c
@@ -1444,6 +1444,19 @@
}
/*
+ * Do not use the message window for the next message(s).
+ * Used when giving a prompt.
+ */
+ void
+dont_use_message_window(void)
+{
+#ifdef HAS_MESSAGE_WINDOW
+ popup_hide_message_win();
+ cmdline_row = Rows - 1;
+#endif
+}
+
+/*
* Prepare for outputting characters in the command line.
*/
void
@@ -4073,6 +4086,7 @@
}
#endif
+ dont_use_message_window();
oldState = State;
State = MODE_CONFIRM;
setmouse();
diff --git a/src/proto/message.pro b/src/proto/message.pro
index bea3016..f0bd4f3 100644
--- a/src/proto/message.pro
+++ b/src/proto/message.pro
@@ -24,6 +24,7 @@
void set_keep_msg(char_u *s, int attr);
void set_keep_msg_from_hist(void);
int use_message_window(void);
+void dont_use_message_window(void);
void msg_start(void);
void msg_starthere(void);
void msg_putchar(int c);
diff --git a/src/version.c b/src/version.c
index 80ce6fe..eb05f9a 100644
--- a/src/version.c
+++ b/src/version.c
@@ -708,6 +708,8 @@
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 308,
+/**/
307,
/**/
306,