From 7892192751cc9c1f4d344eab101e531378568041 Mon Sep 17 00:00:00 2001 From: Jacob Niehus Date: Sun, 24 Jun 2018 13:27:32 -0700 Subject: [PATCH] vim-patch:8.1.0107: getting buffer option clears message (#8637) https://github.com/vim/vim/commit/defe6424aee6201241b7cb231b62db4bbb9f4a9f Author: Bram Moolenaar 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 #3079) --- src/nvim/option.c | 17 ++++++++++------- 1 file changed, 10 insertions(+), 7 deletions(-) diff --git a/src/nvim/option.c b/src/nvim/option.c index 61570a75b1..ed845df416 100644 --- a/src/nvim/option.c +++ b/src/nvim/option.c @@ -4756,18 +4756,21 @@ int get_option_value_strict(char *name, // Special case: 'modified' is b_changed, but we also want to // 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; } 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;