# HG changeset patch # User Bram Moolenaar # Date 1558193405 -7200 # Node ID 2e689fb67c91e1c342171322972b1dbe0c52f2a3 # Parent 21feeb36354f54bea74b2c23d50afb882c0074b2 patch 8.1.1348: running tests may cause the window to move commit https://github.com/vim/vim/commit/f8191c5f07c650b75b85c5a5b3d000fd5cae1643 Author: Bram Moolenaar Date: Sat May 18 17:22:54 2019 +0200 patch 8.1.1348: running tests may cause the window to move Problem: Running tests may cause the window to move. Solution: Correct the reported window position for the offset with the position after ":winpos". Works around an xterm bug. diff --git a/src/testdir/test_edit.vim b/src/testdir/test_edit.vim --- a/src/testdir/test_edit.vim +++ b/src/testdir/test_edit.vim @@ -1359,9 +1359,26 @@ func Test_edit_complete_very_long_name() return endtry - " Try to get the Vim window position before setting 'columns'. + " Try to get the Vim window position before setting 'columns', so that we can + " move the window back to where it was. let winposx = getwinposx() let winposy = getwinposy() + + if winposx >= 0 && winposy >= 0 && !has('gui_running') + " We did get the window position, but xterm may report the wrong numbers. + " Move the window to the reported position and compute any offset. + exe 'winpos ' . winposx . ' ' . winposy + sleep 100m + let x = getwinposx() + if x >= 0 + let winposx += winposx - x + endif + let y = getwinposy() + if y >= 0 + let winposy += winposy - y + endif + endif + let save_columns = &columns " Need at least about 1100 columns to reproduce the problem. set columns=2000 diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -768,6 +768,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 1348, +/**/ 1347, /**/ 1346,