patch 8.0.0399: crash when using balloon_show() when not supported

Problem:    Crash when using balloon_show() when not supported. (Hirohito
            Higashi)
Solution:   Check for balloonEval not to be NULL. (Ken Takata)
diff --git a/src/evalfunc.c b/src/evalfunc.c
index 70b90ad..20c5f89 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -1375,7 +1375,8 @@
     static void
 f_balloon_show(typval_T *argvars, typval_T *rettv UNUSED)
 {
-    gui_mch_post_balloon(balloonEval, get_tv_string_chk(&argvars[0]));
+    if (balloonEval != NULL)
+	gui_mch_post_balloon(balloonEval, get_tv_string_chk(&argvars[0]));
 }
 #endif
 
diff --git a/src/testdir/test_functions.vim b/src/testdir/test_functions.vim
index 218567f..eeeb4e3 100644
--- a/src/testdir/test_functions.vim
+++ b/src/testdir/test_functions.vim
@@ -466,3 +466,8 @@
 
   set fileformats&
 endfunc
+
+func Test_balloon_show()
+  " This won't do anything but must not crash either.
+  call balloon_show('hi!')
+endfunc
diff --git a/src/version.c b/src/version.c
index c1f426c..5a10b47 100644
--- a/src/version.c
+++ b/src/version.c
@@ -765,6 +765,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    399,
+/**/
     398,
 /**/
     397,