diff options
author | Scott Prager <splinterofchaos@gmail.com> | 2015-05-03 09:25:53 -0400 |
---|---|---|
committer | Scott Prager <splinterofchaos@gmail.com> | 2015-05-29 13:12:12 -0400 |
commit | 412d246be71bd99cb4edde4e6f984b0b0d91bcd9 (patch) | |
tree | 01307051583b9cf2faf56778a9bd88e00d2a2122 /src/nvim/ex_cmds2.c | |
parent | fa0f1222212704c93ab828b876bda5e9e1cb507e (diff) | |
download | rneovim-412d246be71bd99cb4edde4e6f984b0b0d91bcd9.tar.gz rneovim-412d246be71bd99cb4edde4e6f984b0b0d91bcd9.tar.bz2 rneovim-412d246be71bd99cb4edde4e6f984b0b0d91bcd9.zip |
getenv: return NULL if empty #2574
Making an environment variable empty can be a way of unsetting it for
platforms that don't support unsetenv(). In most cases, we treat empty
variables as having been unset. For all others, use os_env_exists().
Diffstat (limited to 'src/nvim/ex_cmds2.c')
-rw-r--r-- | src/nvim/ex_cmds2.c | 15 |
1 files changed, 9 insertions, 6 deletions
diff --git a/src/nvim/ex_cmds2.c b/src/nvim/ex_cmds2.c index 3fe4acc471..5c1f487d5e 100644 --- a/src/nvim/ex_cmds2.c +++ b/src/nvim/ex_cmds2.c @@ -3025,10 +3025,11 @@ char *get_mess_lang(void) # endif # else p = os_getenv("LC_ALL"); - if (p == NULL || *p == NUL) { + if (p == NULL) { p = os_getenv("LC_MESSAGES"); - if (p == NULL || *p == NUL) + if (p == NULL) { p = os_getenv("LANG"); + } } # endif return p; @@ -3044,15 +3045,17 @@ static char_u *get_mess_env(void) char_u *p; p = (char_u *)os_getenv("LC_ALL"); - if (p == NULL || *p == NUL) { + if (p == NULL) { p = (char_u *)os_getenv("LC_MESSAGES"); - if (p == NULL || *p == NUL) { + if (p == NULL) { p = (char_u *)os_getenv("LANG"); - if (p != NULL && ascii_isdigit(*p)) + if (p != NULL && ascii_isdigit(*p)) { p = NULL; /* ignore something like "1043" */ + } # ifdef HAVE_GET_LOCALE_VAL - if (p == NULL || *p == NUL) + if (p == NULL) { p = (char_u *)get_locale_val(LC_CTYPE); + } # endif } } |