changeset 126:c3075f07a273

updated for version 7.0044
author vimboss
date Tue, 25 Jan 2005 21:44:33 +0000
parents 2a8d48bdc5de
children 616289ecb7c8
files src/buffer.c src/window.c
diffstat 2 files changed, 10 insertions(+), 4 deletions(-) [+]
line wrap: on
line diff
--- a/src/buffer.c
+++ b/src/buffer.c
@@ -608,7 +608,8 @@ free_buffer_stuff(buf, free_options)
 	free_buf_options(buf, TRUE);
     }
 #ifdef FEAT_EVAL
-    vars_clear(&buf->b_vars);		/* free all internal variables */
+    vars_clear(&buf->b_vars.dv_hashtab); /* free all internal variables */
+    hash_init(&buf->b_vars.dv_hashtab);
 #endif
 #ifdef FEAT_USR_CMDS
     uc_clear(&buf->b_ucmds);		/* clear local user commands */
@@ -1626,7 +1627,11 @@ buflist_new(ffname, sfname, lnum, flags)
     buf->b_wininfo->wi_win = curwin;
 
 #ifdef FEAT_EVAL
-    vars_init(&buf->b_vars);		/* init internal variables */
+    init_var_dict(&buf->b_vars, &buf->b_bufvar);    /* init b: variables */
+#endif
+#ifdef FEAT_SYN_HL
+    hash_init(&buf->b_keywtab);
+    hash_init(&buf->b_keywtab_ic);
 #endif
 
     buf->b_fname = buf->b_sfname;
--- a/src/window.c
+++ b/src/window.c
@@ -3090,7 +3090,8 @@ win_alloc(after)
 	}
 #endif
 #ifdef FEAT_EVAL
-	vars_init(&newwin->w_vars);	    /* init internal variables */
+	/* init w: variables */
+	init_var_dict(&newwin->w_vars, &newwin->w_winvar);
 #endif
 #ifdef FEAT_FOLDING
 	foldInitWin(newwin);
@@ -3134,7 +3135,7 @@ win_free(wp)
     clear_winopt(&wp->w_allbuf_opt);
 
 #ifdef FEAT_EVAL
-    vars_clear(&wp->w_vars);	    /* free all internal variables */
+    vars_clear(&wp->w_vars.dv_hashtab);	    /* free all w: variables */
 #endif
 
     if (prevwin == wp)