To: vim-dev@vim.org Subject: Patch 7.0.124 Fcc: outbox From: Bram Moolenaar Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 8bit ------------ Patch 7.0.124 Problem: getwinvar() obtains a dictionary with window-local variables, but it's always for the current window. Solution: Get the variables of the specified window. (Geoff Reedy) Files: src/eval.c *** ../vim-7.0.123/src/eval.c Tue Oct 3 14:43:31 2006 --- src/eval.c Fri Oct 6 21:08:57 2006 *************** *** 10432,10451 **** if (win != NULL && varname != NULL) { ! if (*varname == '&') /* window-local-option */ ! { ! /* Set curwin to be our win, temporarily. Also set curbuf, so ! * that we can get buffer-local options. */ ! oldcurwin = curwin; ! curwin = win; ! curbuf = win->w_buffer; get_option_tv(&varname, rettv, 1); - - /* restore previous notion of curwin */ - curwin = oldcurwin; - curbuf = curwin->w_buffer; - } else { if (*varname == NUL) --- 10432,10445 ---- if (win != NULL && varname != NULL) { ! /* Set curwin to be our win, temporarily. Also set curbuf, so ! * that we can get buffer-local options. */ ! oldcurwin = curwin; ! curwin = win; ! curbuf = win->w_buffer; + if (*varname == '&') /* window-local-option */ get_option_tv(&varname, rettv, 1); else { if (*varname == NUL) *************** *** 10458,10463 **** --- 10452,10461 ---- if (v != NULL) copy_tv(&v->di_tv, rettv); } + + /* restore previous notion of curwin */ + curwin = oldcurwin; + curbuf = curwin->w_buffer; } --emsg_off; *** ../vim-7.0.123/src/version.c Tue Oct 10 11:41:44 2006 --- src/version.c Tue Oct 10 12:53:15 2006 *************** *** 668,669 **** --- 668,671 ---- { /* Add new patch number below this line */ + /**/ + 124, /**/ -- How To Keep A Healthy Level Of Insanity: 14. Put mosquito netting around your work area. Play a tape of jungle sounds all day. /// Bram Moolenaar -- Bram@Moolenaar.net -- http://www.Moolenaar.net \\\ /// sponsor Vim, vote for features -- http://www.Vim.org/sponsor/ \\\ \\\ download, build and distribute -- http://www.A-A-P.org /// \\\ help me help AIDS victims -- http://ICCF-Holland.org ///