Mercurial > vim
changeset 14179:ab64a4fb5edd v8.1.0107
patch 8.1.0107: Python: getting buffer option clears message
commit https://github.com/vim/vim/commit/defe6424aee6201241b7cb231b62db4bbb9f4a9f
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Jun 24 15:14:07 2018 +0200
patch 8.1.0107: Python: getting buffer option clears message
Problem: Python: getting buffer option clears message. (Jacob Niehus)
Solution: Don't use aucmd_prepbuf(). (closes https://github.com/vim/vim/issues/3079)
author | Christian Brabandt <cb@256bit.org> |
---|---|
date | Sun, 24 Jun 2018 15:15:05 +0200 |
parents | a0ad689f4e0d |
children | 92037587bbb3 |
files | src/option.c src/version.c |
diffstat | 2 files changed, 13 insertions(+), 7 deletions(-) [+] |
line wrap: on
line diff
--- a/src/option.c +++ b/src/option.c @@ -9692,7 +9692,7 @@ get_option_value_strict( * consider it set when 'ff' or 'fenc' changed. */ if (p->indir == PV_MOD) { - *numval = bufIsChanged((buf_T *) from); + *numval = bufIsChanged((buf_T *)from); varp = NULL; } #ifdef FEAT_CRYPT @@ -9705,17 +9705,21 @@ get_option_value_strict( #endif else { - aco_save_T aco; - aucmd_prepbuf(&aco, (buf_T *) from); + buf_T *save_curbuf = curbuf; + + // only getting a pointer, no need to use aucmd_prepbuf() + curbuf = (buf_T *)from; + curwin->w_buffer = curbuf; varp = get_varp(p); - aucmd_restbuf(&aco); + curbuf = save_curbuf; + curwin->w_buffer = curbuf; } } else if (opt_type == SREQ_WIN) { - win_T *save_curwin; - save_curwin = curwin; - curwin = (win_T *) from; + win_T *save_curwin = curwin; + + curwin = (win_T *)from; curbuf = curwin->w_buffer; varp = get_varp(p); curwin = save_curwin;