summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2019-12-11 19:00:04 +0100
committerBram Moolenaar <Bram@vim.org>2019-12-11 19:00:04 +0100
commit0efd1bdcf4891f9ef2537e4c3d50a379186dca5f (patch)
treed30f4ed13d1ab221b2483b49b3ae4bd157e15633 /src
parent99ebf22c523e3fdb491b2c92b6f3a7d42721361d (diff)
patch 8.1.2419: with a long file name the hit-enter prompt appearsv8.1.2419
Problem: With a long file name the hit-enter prompt appears. (J. Lewis Muir) Solution: When checking for text to wrap don't do this when outputing a CR.
Diffstat (limited to 'src')
-rw-r--r--src/message.c2
-rw-r--r--src/testdir/dumps/Test_long_file_name_1.dump8
-rw-r--r--src/testdir/test_display.vim18
-rw-r--r--src/version.c2
4 files changed, 29 insertions, 1 deletions
diff --git a/src/message.c b/src/message.c
index 9ecd194b59..0b690bb5d3 100644
--- a/src/message.c
+++ b/src/message.c
@@ -2080,7 +2080,7 @@ msg_puts_display(
|| (has_mbyte && (*mb_ptr2cells)(s) > 1 && msg_col <= 2))
:
#endif
- (msg_col + t_col >= Columns - 1
+ ((*s != '\r' && msg_col + t_col >= Columns - 1)
|| (*s == TAB && msg_col + t_col >= ((Columns - 1) & ~7))
|| (has_mbyte && (*mb_ptr2cells)(s) > 1
&& msg_col + t_col >= Columns - 2)))))
diff --git a/src/testdir/dumps/Test_long_file_name_1.dump b/src/testdir/dumps/Test_long_file_name_1.dump
new file mode 100644
index 0000000000..46fa9bdfbe
--- /dev/null
+++ b/src/testdir/dumps/Test_long_file_name_1.dump
@@ -0,0 +1,8 @@
+> +0&#ffffff0@74
+|~+0#4040ff13&| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|~| @73
+|<+0#0000000&|x@64|"| |0|L|,| |0|C|
diff --git a/src/testdir/test_display.vim b/src/testdir/test_display.vim
index a25d2cfe08..4ef361e05b 100644
--- a/src/testdir/test_display.vim
+++ b/src/testdir/test_display.vim
@@ -181,3 +181,21 @@ func Test_scroll_CursorLineNr_update()
call StopVimInTerminal(buf)
call delete(filename)
endfunc
+
+" check a long file name does not result in the hit-enter prompt
+func Test_edit_long_file_name()
+ CheckScreendump
+
+ let longName = 'x'->repeat(&columns)
+ call writefile([], longName)
+ let buf = RunVimInTerminal('-N -u NONE ' .. longName, #{rows: 8})
+
+ call VerifyScreenDump(buf, 'Test_long_file_name_1', {})
+
+ call term_sendkeys(buf, ":q\<cr>")
+
+ " clean up
+ call StopVimInTerminal(buf)
+ call delete(longName)
+endfunc
+
diff --git a/src/version.c b/src/version.c
index ecdcb9c7fa..2b992df949 100644
--- a/src/version.c
+++ b/src/version.c
@@ -743,6 +743,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 2419,
+/**/
2418,
/**/
2417,