patch 8.2.4754: using cached values after unsetting some environment variables
Problem: Still using cached values after unsetting some known environment
variables.
Solution: Take care of the side effects. (closes #10194)
diff --git a/src/optionstr.c b/src/optionstr.c
index 698a3f3..26dd551 100644
--- a/src/optionstr.c
+++ b/src/optionstr.c
@@ -644,7 +644,7 @@
/*
* Handle string options that need some action to perform when changed.
- * Returns NULL for success, or an error message for an error.
+ * Returns NULL for success, or an unstranslated error message for an error.
*/
char *
did_set_string_option(
@@ -787,15 +787,9 @@
{
// May compute new values for $VIM and $VIMRUNTIME
if (didset_vim)
- {
- vim_setenv((char_u *)"VIM", (char_u *)"");
- didset_vim = FALSE;
- }
+ vim_unsetenv_ext((char_u *)"VIM");
if (didset_vimruntime)
- {
- vim_setenv((char_u *)"VIMRUNTIME", (char_u *)"");
- didset_vimruntime = FALSE;
- }
+ vim_unsetenv_ext((char_u *)"VIMRUNTIME");
}
#ifdef FEAT_SYN_HL