diff --git a/src/eval.c b/src/eval.c
index 6e88c5c..e0f27a0 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -5667,7 +5667,7 @@
 #endif
 	    break;
 	case VAR_UNKNOWN:
-	    emsg(_("E908: using an invalid value as a String"));
+	    emsg(_(e_inval_string));
 	    break;
     }
     return NULL;
diff --git a/src/evalfunc.c b/src/evalfunc.c
index af43fb9..f192506 100644
--- a/src/evalfunc.c
+++ b/src/evalfunc.c
@@ -2015,6 +2015,12 @@
 	    return;
 	++list->lv_refcount;
     }
+    else if (argvars[arg_off].v_type == VAR_JOB
+	    || argvars[arg_off].v_type == VAR_CHANNEL)
+    {
+	emsg(_(e_inval_string));
+	return;
+    }
     else
     {
 	cmd = tv_get_string_chk(&argvars[arg_off]);
diff --git a/src/globals.h b/src/globals.h
index e173869..34430d3 100644
--- a/src/globals.h
+++ b/src/globals.h
@@ -1599,6 +1599,7 @@
 EXTERN char e_listblobreq[]	INIT(= N_("E897: List or Blob required"));
 EXTERN char e_listdictarg[]	INIT(= N_("E712: Argument of %s must be a List or Dictionary"));
 EXTERN char e_listdictblobarg[]	INIT(= N_("E896: Argument of %s must be a List, Dictionary or Blob"));
+EXTERN char e_inval_string[]	INIT(= N_("E908: using an invalid value as a String"));
 #endif
 #ifdef FEAT_QUICKFIX
 EXTERN char e_readerrf[]	INIT(= N_("E47: Error while reading errorfile"));
diff --git a/src/testdir/test_execute_func.vim b/src/testdir/test_execute_func.vim
index 7934e60..30dcb62 100644
--- a/src/testdir/test_execute_func.vim
+++ b/src/testdir/test_execute_func.vim
@@ -38,8 +38,6 @@
   call assert_equal("\nsomething", execute('echo "something"', 'silent!'))
   call assert_equal("", execute('burp', 'silent!'))
   call assert_fails('call execute("echo \"x\"", 3.4)', 'E806:')
-
-  call assert_equal("", execute(test_null_string()))
 endfunc
 
 func Test_execute_list()
@@ -50,7 +48,6 @@
   call assert_equal("\n0\n1\n2\n3", execute(l))
 
   call assert_equal("", execute([]))
-  call assert_equal("", execute(test_null_list()))
 endfunc
 
 func Test_execute_does_not_change_col()
@@ -132,3 +129,15 @@
   tabclose
   unlet xyz
 endfunc
+
+func Test_execute_null()
+  call assert_equal("", execute(test_null_string()))
+  call assert_equal("", execute(test_null_list()))
+  call assert_fails('call execute(test_null_dict())', 'E731:')
+  call assert_fails('call execute(test_null_blob())', 'E976:')
+  call assert_fails('call execute(test_null_partial())','E729:')
+  if has('job')
+    call assert_fails('call execute(test_null_job())', 'E908:')
+    call assert_fails('call execute(test_null_channel())', 'E908:')
+  endif
+endfunc
diff --git a/src/version.c b/src/version.c
index a02b198..54104eb 100644
--- a/src/version.c
+++ b/src/version.c
@@ -743,6 +743,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    103,
+/**/
     102,
 /**/
     101,
