aboutsummaryrefslogtreecommitdiff
path: root/src/nvim/api
diff options
context:
space:
mode:
authorzeertzjq <zeertzjq@outlook.com>2025-01-09 12:32:25 +0800
committerGitHub <noreply@github.com>2025-01-09 12:32:25 +0800
commit19c9572d3626cde8503ee9061fa334b73f257b03 (patch)
tree9ac8478d974b5abd3a3a662348a4c7f58cc645db /src/nvim/api
parent822313e42b5b8d51ea0b3f1f97c47026f2c7e2e2 (diff)
downloadrneovim-19c9572d3626cde8503ee9061fa334b73f257b03.tar.gz
rneovim-19c9572d3626cde8503ee9061fa334b73f257b03.tar.bz2
rneovim-19c9572d3626cde8503ee9061fa334b73f257b03.zip
Revert "refactor(options): set option value for non-current context directly" (#31924)
Reverts #31112
Diffstat (limited to 'src/nvim/api')
-rw-r--r--src/nvim/api/deprecated.c10
-rw-r--r--src/nvim/api/options.c12
-rw-r--r--src/nvim/api/vim.c8
3 files changed, 11 insertions, 19 deletions
diff --git a/src/nvim/api/deprecated.c b/src/nvim/api/deprecated.c
index 47a49436ab..d5eddb74de 100644
--- a/src/nvim/api/deprecated.c
+++ b/src/nvim/api/deprecated.c
@@ -649,8 +649,8 @@ static Object get_option_from(void *from, OptScope scope, String name, Error *er
OptVal value = NIL_OPTVAL;
if (option_has_scope(opt_idx, scope)) {
- value = get_option_value_from(opt_idx, option_ctx_from(scope, from),
- scope == kOptScopeGlobal ? OPT_GLOBAL : OPT_LOCAL);
+ value = get_option_value_for(opt_idx, scope == kOptScopeGlobal ? OPT_GLOBAL : OPT_LOCAL,
+ scope, from, err);
if (ERROR_SET(err)) {
return (Object)OBJECT_INIT;
}
@@ -701,11 +701,7 @@ static void set_option_to(uint64_t channel_id, void *to, OptScope scope, String
: ((scope == kOptScopeGlobal) ? OPT_GLOBAL : OPT_LOCAL);
WITH_SCRIPT_CONTEXT(channel_id, {
- const char *errmsg
- = set_option_value_for(opt_idx, optval, option_ctx_from(scope, to), opt_flags);
- if (errmsg) {
- api_set_error(err, kErrorTypeException, "%s", errmsg);
- }
+ set_option_value_for(name.data, opt_idx, optval, opt_flags, scope, to, err);
});
}
diff --git a/src/nvim/api/options.c b/src/nvim/api/options.c
index 2bbbdbbe8c..64f8a35d54 100644
--- a/src/nvim/api/options.c
+++ b/src/nvim/api/options.c
@@ -157,8 +157,8 @@ Object nvim_get_option_value(String name, Dict(option) *opts, Error *err)
void *from = NULL;
char *filetype = NULL;
- if (!validate_option_value_args(opts, name.data, &opt_idx, &opt_flags, &scope, &from, &filetype,
- err)) {
+ if (!validate_option_value_args(opts, name.data, &opt_idx, &opt_flags, &scope, &from,
+ &filetype, err)) {
return (Object)OBJECT_INIT;
}
@@ -182,7 +182,7 @@ Object nvim_get_option_value(String name, Dict(option) *opts, Error *err)
from = ftbuf;
}
- OptVal value = get_option_value_from(opt_idx, option_ctx_from(scope, from), opt_flags);
+ OptVal value = get_option_value_for(opt_idx, opt_flags, scope, from, err);
if (ftbuf != NULL) {
// restore curwin/curbuf and a few other things
@@ -257,11 +257,7 @@ void nvim_set_option_value(uint64_t channel_id, String name, Object value, Dict(
});
WITH_SCRIPT_CONTEXT(channel_id, {
- const char *errmsg
- = set_option_value_for(opt_idx, optval, option_ctx_from(scope, to), opt_flags);
- if (errmsg) {
- api_set_error(err, kErrorTypeException, "%s", errmsg);
- }
+ set_option_value_for(name.data, opt_idx, optval, opt_flags, scope, to, err);
});
}
diff --git a/src/nvim/api/vim.c b/src/nvim/api/vim.c
index 46e6b24c75..e3e69f4ff6 100644
--- a/src/nvim/api/vim.c
+++ b/src/nvim/api/vim.c
@@ -983,10 +983,10 @@ Buffer nvim_create_buf(Boolean listed, Boolean scratch, Error *err)
buf_copy_options(buf, BCO_ENTER | BCO_NOHELP);
if (scratch) {
- set_option_direct_for(kOptBufhidden, STATIC_CSTR_AS_OPTVAL("hide"),
- option_ctx_from(kOptScopeBuf, buf), OPT_LOCAL, 0);
- set_option_direct_for(kOptBuftype, STATIC_CSTR_AS_OPTVAL("nofile"),
- option_ctx_from(kOptScopeBuf, buf), OPT_LOCAL, 0);
+ set_option_direct_for(kOptBufhidden, STATIC_CSTR_AS_OPTVAL("hide"), OPT_LOCAL, 0,
+ kOptScopeBuf, buf);
+ set_option_direct_for(kOptBuftype, STATIC_CSTR_AS_OPTVAL("nofile"), OPT_LOCAL, 0,
+ kOptScopeBuf, buf);
assert(buf->b_ml.ml_mfp->mf_fd < 0); // ml_open() should not have opened swapfile already
buf->b_p_swf = false;
buf->b_p_ml = false;