# HG changeset patch # User Christian Brabandt # Date 1449342004 -3600 # Node ID 743c258ca3abf62e51667577be4f2389afb72eaa # Parent 7ebcc26c49febc0959cca77224aa5128cd26e488 commit https://github.com/vim/vim/commit/9dc2ce398bb3456cc8f590ef0260459798b34d2a Author: Bram Moolenaar Date: Sat Dec 5 19:47:04 2015 +0100 patch 7.4.961 Problem: Test107 fails in some circunstances. Solution: When using "zt", "zb" and "z=" recompute the fraction. diff --git a/src/normal.c b/src/normal.c --- a/src/normal.c +++ b/src/normal.c @@ -4880,6 +4880,7 @@ dozet: case 't': scroll_cursor_top(0, TRUE); redraw_later(VALID); + set_fraction(curwin); break; /* "z." and "zz": put cursor in middle of screen */ @@ -4888,6 +4889,7 @@ dozet: case 'z': scroll_cursor_halfway(TRUE); redraw_later(VALID); + set_fraction(curwin); break; /* "z^", "z-" and "zb": put cursor at bottom of screen */ @@ -4910,6 +4912,7 @@ dozet: case 'b': scroll_cursor_bot(0, TRUE); redraw_later(VALID); + set_fraction(curwin); break; /* "zH" - scroll screen right half-page */ diff --git a/src/proto/window.pro b/src/proto/window.pro --- a/src/proto/window.pro +++ b/src/proto/window.pro @@ -53,6 +53,7 @@ void win_setwidth_win __ARGS((int width, void win_setminheight __ARGS((void)); void win_drag_status_line __ARGS((win_T *dragwin, int offset)); void win_drag_vsep_line __ARGS((win_T *dragwin, int offset)); +void set_fraction __ARGS((win_T *wp)); void win_new_height __ARGS((win_T *wp, int height)); void win_new_width __ARGS((win_T *wp, int width)); void win_comp_scroll __ARGS((win_T *wp)); diff --git a/src/version.c b/src/version.c --- a/src/version.c +++ b/src/version.c @@ -742,6 +742,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 961, +/**/ 960, /**/ 959, diff --git a/src/window.c b/src/window.c --- a/src/window.c +++ b/src/window.c @@ -75,7 +75,6 @@ static int frame_check_width __ARGS((fra #endif /* FEAT_WINDOWS */ static win_T *win_alloc __ARGS((win_T *after, int hidden)); -static void set_fraction __ARGS((win_T *wp)); #define URL_SLASH 1 /* path_is_url() has found "://" */ #define URL_BACKSLASH 2 /* path_is_url() has found ":\\" */ @@ -5828,7 +5827,7 @@ win_drag_vsep_line(dragwin, offset) /* * Set wp->w_fraction for the current w_wrow and w_height. */ - static void + void set_fraction(wp) win_T *wp; {