changeset 11593:c4e7fe672a72 v8.0.0679

patch 8.0.0679: using freed memory commit https://github.com/vim/vim/commit/41cc038ff83498c589c7d25b3d2984145528eb92 Author: Bram Moolenaar <Bram@vim.org> Date: Mon Jun 26 09:59:35 2017 +0200 patch 8.0.0679: using freed memory Problem: Using freed memory. Solution: Get the parent frame pointer earlier.
author Christian Brabandt <cb@256bit.org>
date Mon, 26 Jun 2017 10:00:03 +0200
parents 029903dc8706
children c884bfd04287
files src/version.c src/window.c
diffstat 2 files changed, 4 insertions(+), 3 deletions(-) [+]
line wrap: on
line diff
--- a/src/version.c
+++ b/src/version.c
@@ -765,6 +765,8 @@ static char *(features[]) =
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    679,
+/**/
     678,
 /**/
     677,
--- a/src/window.c
+++ b/src/window.c
@@ -2282,7 +2282,7 @@ win_close(win_T *win, int free_buf)
     int		dir;
     int		help_window = FALSE;
     tabpage_T   *prev_curtab = curtab;
-    frame_T	*win_frame = win->w_frame;
+    frame_T	*win_frame = win->w_frame->fr_parent;
 
     if (last_window())
     {
@@ -2462,8 +2462,7 @@ win_close(win_T *win, int free_buf)
     if (p_ea && (*p_ead == 'b' || *p_ead == dir))
 	/* If the frame of the closed window contains the new current window,
 	 * only resize that frame.  Otherwise resize all windows. */
-	win_equal(curwin,
-		      curwin->w_frame->fr_parent == win_frame->fr_parent, dir);
+	win_equal(curwin, curwin->w_frame->fr_parent == win_frame, dir);
     else
 	win_comp_pos();
     if (close_curwin)