summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/evalfunc.c2
-rw-r--r--src/testdir/test_vim9_builtin.vim13
-rw-r--r--src/version.c2
3 files changed, 16 insertions, 1 deletions
diff --git a/src/evalfunc.c b/src/evalfunc.c
index bee76c6ea..29bbe8ab8 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -1021,7 +1021,7 @@ static funcentry_T global_functions[] =
{"getcwd", 0, 2, FEARG_1, NULL,
ret_string, f_getcwd},
{"getenv", 1, 1, FEARG_1, NULL,
- ret_string, f_getenv},
+ ret_any, f_getenv},
{"getfontname", 0, 1, 0, NULL,
ret_string, f_getfontname},
{"getfperm", 1, 1, FEARG_1, NULL,
diff --git a/src/testdir/test_vim9_builtin.vim b/src/testdir/test_vim9_builtin.vim
index 3ee8a620f..8ec3db148 100644
--- a/src/testdir/test_vim9_builtin.vim
+++ b/src/testdir/test_vim9_builtin.vim
@@ -472,6 +472,19 @@ def Test_getchar()
getchar(true)->assert_equal(0)
enddef
+def Test_getenv()
+ if getenv('does-not_exist') == ''
+ assert_report('getenv() should return null')
+ endif
+ if getenv('does-not_exist') == null
+ else
+ assert_report('getenv() should return null')
+ endif
+ $SOMEENVVAR = 'some'
+ assert_equal('some', getenv('SOMEENVVAR'))
+ unlet $SOMEENVVAR
+enddef
+
def Test_getcompletion()
set wildignore=*.vim,*~
var l = getcompletion('run', 'file', true)
diff --git a/src/version.c b/src/version.c
index 447b6e6e3..2dbf24a64 100644
--- a/src/version.c
+++ b/src/version.c
@@ -751,6 +751,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
+ 2583,
+/**/
2582,
/**/
2581,