diff options
author | Lewis Russell <lewis6991@gmail.com> | 2023-01-23 10:07:26 +0000 |
---|---|---|
committer | Lewis Russell <lewis6991@gmail.com> | 2023-01-25 11:48:52 +0000 |
commit | 47544b625524628050a52b15cbff7150a2a3bd14 (patch) | |
tree | ac981dc10f57248a1b2b1d680d6bf03cdb9d90f0 | |
parent | b693d651718f32bde0cebc4f692627929b1c33e7 (diff) | |
download | rneovim-47544b625524628050a52b15cbff7150a2a3bd14.tar.gz rneovim-47544b625524628050a52b15cbff7150a2a3bd14.tar.bz2 rneovim-47544b625524628050a52b15cbff7150a2a3bd14.zip |
refactor(optionstr.c): break up did_set_string_option 34
-rw-r--r-- | src/nvim/optionstr.c | 21 |
1 files changed, 13 insertions, 8 deletions
diff --git a/src/nvim/optionstr.c b/src/nvim/optionstr.c index 947a26d189..dae633db11 100644 --- a/src/nvim/optionstr.c +++ b/src/nvim/optionstr.c @@ -725,6 +725,18 @@ static void did_set_nrformats(char **varp, char **errmsg) } } +static void did_set_sessionoptions(char *oldval, char **errmsg) +{ + if (opt_strings_flags(p_ssop, p_ssop_values, &ssop_flags, true) != OK) { + *errmsg = e_invarg; + } + if ((ssop_flags & SSOP_CURDIR) && (ssop_flags & SSOP_SESDIR)) { + // Don't allow both "sesdir" and "curdir". + (void)opt_strings_flags(oldval, p_ssop_values, &ssop_flags, true); + *errmsg = e_invarg; + } +} + static void did_set_background(char **errmsg) { if (check_opt_strings(p_bg, p_bg_values, false) != OK) { @@ -1410,14 +1422,7 @@ char *did_set_string_option(int opt_idx, char **varp, char *oldval, char *errbuf } else if (gvarp == &p_nf) { // 'nrformats' did_set_nrformats(varp, &errmsg); } else if (varp == &p_ssop) { // 'sessionoptions' - if (opt_strings_flags(p_ssop, p_ssop_values, &ssop_flags, true) != OK) { - errmsg = e_invarg; - } - if ((ssop_flags & SSOP_CURDIR) && (ssop_flags & SSOP_SESDIR)) { - // Don't allow both "sesdir" and "curdir". - (void)opt_strings_flags(oldval, p_ssop_values, &ssop_flags, true); - errmsg = e_invarg; - } + did_set_sessionoptions(oldval, &errmsg); } else if (varp == &p_vop) { // 'viewoptions' if (opt_strings_flags(p_vop, p_ssop_values, &vop_flags, true) != OK) { errmsg = e_invarg; |