diff options
author | Bram Moolenaar <Bram@vim.org> | 2015-08-25 12:56:31 +0200 |
---|---|---|
committer | Bram Moolenaar <Bram@vim.org> | 2015-08-25 12:56:31 +0200 |
commit | b341dda575899458f7075614dcedf0a80ee9d080 (patch) | |
tree | 9becc81d4caa991c04866bf326745934abab702d /src | |
parent | 7fb7d34caf5f45289212987123baac4ce5a0d38c (diff) | |
download | vim-b341dda575899458f7075614dcedf0a80ee9d080.zip |
patch 7.4.830
Problem: Resetting 'encoding' when doing ":set all&" causes problems.
(Bjorn Linse) Display is not updated.
Solution: Do not reset 'encoding'. Do a full redraw.
Diffstat (limited to 'src')
-rw-r--r-- | src/option.c | 5 | ||||
-rw-r--r-- | src/version.c | 2 |
2 files changed, 6 insertions, 1 deletions
diff --git a/src/option.c b/src/option.c index f3e4e20fb..08e2e5948 100644 --- a/src/option.c +++ b/src/option.c @@ -3656,6 +3656,7 @@ set_option_default(opt_idx, opt_flags, compatible) /* * Set all options (except terminal options) to their default value. + * When "opt_flags" is non-zero skip 'encoding'. */ static void set_options_default(opt_flags) @@ -3668,7 +3669,8 @@ set_options_default(opt_flags) #endif for (i = 0; !istermoption(&options[i]); i++) - if (!(options[i].flags & P_NODEFAULT)) + if (!(options[i].flags & P_NODEFAULT) + && (opt_flags == 0 || options[i].var != (char_u *)&p_enc)) set_option_default(i, opt_flags, p_cp); #ifdef FEAT_WINDOWS @@ -4204,6 +4206,7 @@ do_set(arg, opt_flags) ++arg; /* Only for :set command set global value of local options. */ set_options_default(OPT_FREE | opt_flags); + redraw_all_later(CLEAR); } else { diff --git a/src/version.c b/src/version.c index 5bd31fad4..619aa588b 100644 --- a/src/version.c +++ b/src/version.c @@ -742,6 +742,8 @@ static char *(features[]) = static int included_patches[] = { /* Add new patch number below this line */ /**/ + 830, +/**/ 829, /**/ 828, |