diff src/buffer.c @ 12630:560adb3eed8b v8.0.1193

patch 8.0.1193: crash when wiping out a buffer after using getbufinfo() commit https://github.com/vim/vim/commit/b2c8750c4e95f64a8dff912af81e13318b3f6ed6 Author: Bram Moolenaar <Bram@vim.org> Date: Sat Oct 14 21:15:58 2017 +0200 patch 8.0.1193: crash when wiping out a buffer after using getbufinfo() Problem: Crash when wiping out a buffer after using getbufinfo(). (Yegappan Lakshmanan) Solution: Remove b:changedtick from the buffer variables.
author Christian Brabandt <cb@256bit.org>
date Sat, 14 Oct 2017 21:30:05 +0200
parents 31737ff54115
children ac6e56d8950e
line wrap: on
line diff
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -837,6 +837,8 @@ free_buffer(buf_T *buf)
     ++buf_free_count;
     free_buffer_stuff(buf, TRUE);
 #ifdef FEAT_EVAL
+    /* b:changedtick uses an item in buf_T, remove it now */
+    dictitem_remove(buf->b_vars, (dictitem_T *)&buf->b_ct_di);
     unref_var_dict(buf->b_vars);
 #endif
 #ifdef FEAT_LUA