# HG changeset patch # User Christian Brabandt # Date 1522338307 -7200 # Node ID af68603e213d5fb0a5e9550d72d26e10f5a9f61c # Parent 6b2e00ec807e1c0ce6a01082b8cb7b617df18a4e patch 8.0.1653: screen dump is made too soon commit https://github.com/vim/vim/commit/1834d37396e046ccbc4aa2678ba16a38197da6b4 Author: Bram Moolenaar Date: Thu Mar 29 17:40:46 2018 +0200 patch 8.0.1653: screen dump is made too soon Problem: Screen dump is made too soon. Solution: Wait until the ruler is displayed. (Ozaki Kiichi, closes https://github.com/vim/vim/issues/2755) diff --git a/src/testdir/dumps/Test_popup_command_01.dump b/src/testdir/dumps/Test_popup_command_01.dump --- a/src/testdir/dumps/Test_popup_command_01.dump +++ b/src/testdir/dumps/Test_popup_command_01.dump @@ -1,5 +1,5 @@ |o+0&#ffffff0|n|e| |t|w|o| |t|h|r|e@1| |f|o|u|r| |f|i|v|e| @51 -|a|n|d| |o|n|e| |t|w|o| |X|t|h|r|e@1| |f|o|u|r| |f|i|v|e| @46 +|a|n|d| |o|n|e| |t|w|o| >X|t|h|r|e@1| |f|o|u|r| |f|i|v|e| @46 |o|n|e| |m|o|r|e| |t|w| +0#0000001#ffd7ff255|U|n|d|o| @12| +0#0000000#ffffff0@45 |~+0#4040ff13&| @9| +0#0000001#ffd7ff255@17| +0#4040ff13#ffffff0@45 |~| @9| +0#0000001#ffd7ff255|P|a|s|t|e| @11| +0#4040ff13#ffffff0@45 @@ -17,4 +17,4 @@ |~| @73 |~| @73 |~| @73 -|:+0#0000000&|p|o|p|u|p| |P|o|p|U|p| @34|:| @8> @17 +|:+0#0000000&|p|o|p|u|p| |P|o|p|U|p| @62 diff --git a/src/testdir/dumps/Test_popup_command_02.dump b/src/testdir/dumps/Test_popup_command_02.dump --- a/src/testdir/dumps/Test_popup_command_02.dump +++ b/src/testdir/dumps/Test_popup_command_02.dump @@ -17,4 +17,4 @@ |~| @73 |~| @73 |~| @73 -|:+0#0000000&|p|o|p|u|p| |P|o|p|U|p| @34|:| @8| @17 +|:+0#0000000&|p|o|p|u|p| |P|o|p|U|p| @62 diff --git a/src/testdir/screendump.vim b/src/testdir/screendump.vim --- a/src/testdir/screendump.vim +++ b/src/testdir/screendump.vim @@ -59,6 +59,9 @@ func RunVimInTerminal(arguments, options let buf = term_start(cmd, {'curwin': 1, 'term_rows': rows, 'term_cols': cols}) call assert_equal([rows, cols], term_getsize(buf)) + " Wait for the ruler (in the status line) to be shown. + call WaitFor({-> len(term_getline(buf, rows)) >= cols - 1}) + return buf endfunc diff --git a/src/testdir/test_autocmd.vim b/src/testdir/test_autocmd.vim --- a/src/testdir/test_autocmd.vim +++ b/src/testdir/test_autocmd.vim @@ -1315,6 +1315,8 @@ func Test_Changed_FirstTime() call writefile([''], 'Xchanged.txt') let buf = term_start([GetVimProg(), '--clean', '-c', 'set noswapfile'], {'term_rows': 3}) call assert_equal('running', term_getstatus(buf)) + " Wait for the ruler (in the status line) to be shown. + call WaitFor({-> term_getline(buf, 3) =~# '\ call writefile(['No'], 'Xchanged.txt')\") call term_sendkeys(buf, "\\:qa!\") diff --git a/src/testdir/test_terminal.vim b/src/testdir/test_terminal.vim --- a/src/testdir/test_terminal.vim +++ b/src/testdir/test_terminal.vim @@ -975,7 +975,7 @@ endfunction func Check_dump01(off) call assert_equal('one two three four five', trim(getline(a:off + 1))) call assert_equal('~ Select Word', trim(getline(a:off + 7))) - call assert_equal(':popup PopUp :', trim(getline(a:off + 20))) + call assert_equal(':popup PopUp', trim(getline(a:off + 20))) endfunc func Test_terminal_dumpwrite_composing() diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -763,6 +763,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1653, +/**/ 1652, /**/ 1651,