mirror of
https://github.com/neovim/neovim.git
synced 2025-09-07 03:48:18 +00:00
Merge pull request #11392 from jamessan/get-setenv-bug
[release-0.4] f_getenv/setenv: Access v_special when v_type is VAR_SPECIAL
This commit is contained in:
@@ -8492,7 +8492,7 @@ static void f_getenv(typval_T *argvars, typval_T *rettv, FunPtr fptr)
|
|||||||
|
|
||||||
if (p == NULL) {
|
if (p == NULL) {
|
||||||
rettv->v_type = VAR_SPECIAL;
|
rettv->v_type = VAR_SPECIAL;
|
||||||
rettv->vval.v_number = kSpecialVarNull;
|
rettv->vval.v_special = kSpecialVarNull;
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
rettv->vval.v_string = p;
|
rettv->vval.v_string = p;
|
||||||
@@ -15441,7 +15441,7 @@ static void f_setenv(typval_T *argvars, typval_T *rettv, FunPtr fptr)
|
|||||||
const char *name = tv_get_string_buf(&argvars[0], namebuf);
|
const char *name = tv_get_string_buf(&argvars[0], namebuf);
|
||||||
|
|
||||||
if (argvars[1].v_type == VAR_SPECIAL
|
if (argvars[1].v_type == VAR_SPECIAL
|
||||||
&& argvars[1].vval.v_number == kSpecialVarNull) {
|
&& argvars[1].vval.v_special == kSpecialVarNull) {
|
||||||
os_unsetenv(name);
|
os_unsetenv(name);
|
||||||
} else {
|
} else {
|
||||||
os_setenv(name, tv_get_string_buf(&argvars[1], valbuf), 1);
|
os_setenv(name, tv_get_string_buf(&argvars[1], valbuf), 1);
|
||||||
|
Reference in New Issue
Block a user