Mercurial > vim
changeset 5308:4fe1dfc7014e v7.4.007
updated for version 7.4.007
Problem: Creating a preview window on startup leaves the screen layout in a
messed up state. (Marius Gedminas)
Solution: Don't change firstwin. (Christian Brabandt)
author | Bram Moolenaar <bram@vim.org> |
---|---|
date | Thu, 22 Aug 2013 14:14:27 +0200 |
parents | f38e25b8dfbb |
children | 2ee5e568766c |
files | src/main.c src/version.c |
diffstat | 2 files changed, 15 insertions(+), 14 deletions(-) [+] |
line wrap: on
line diff
--- a/src/main.c +++ b/src/main.c @@ -2727,6 +2727,7 @@ edit_buffers(parmp) int arg_idx; /* index in argument list */ int i; int advance = TRUE; + win_T *win; # ifdef FEAT_AUTOCMD /* @@ -2816,24 +2817,22 @@ edit_buffers(parmp) # ifdef FEAT_AUTOCMD --autocmd_no_enter; # endif + + /* make the first window the current window */ + win = firstwin; #if defined(FEAT_WINDOWS) && defined(FEAT_QUICKFIX) - /* - * Avoid making a preview window the current window. - */ - if (firstwin->w_p_pvw) + /* Avoid making a preview window the current window. */ + while (win->w_p_pvw) { - win_T *win; - - for (win = firstwin; win != NULL; win = win->w_next) - if (!win->w_p_pvw) - { - firstwin = win; - break; - } + win = win->w_next; + if (win == NULL) + { + win = firstwin; + break; + } } #endif - /* make the first window the current window */ - win_enter(firstwin, FALSE); + win_enter(win, FALSE); # ifdef FEAT_AUTOCMD --autocmd_no_leave;