diff --git a/src/channel.c b/src/channel.c
index 2f7403a..2e5965b 100644
--- a/src/channel.c
+++ b/src/channel.c
@@ -698,10 +698,14 @@
 	}
 	else
 	{
-	    typval_T	*tv = eval_expr(arg, NULL);
+	    typval_T	*tv;
 	    typval_T	err_tv;
 	    char_u	*json;
 
+	    /* Don't pollute the display with errors. */
+	    ++emsg_skip;
+	    tv = eval_expr(arg, NULL);
+	    --emsg_skip;
 	    if (is_eval)
 	    {
 		if (tv == NULL)
@@ -714,7 +718,8 @@
 		channel_send(idx, json, "eval");
 		vim_free(json);
 	    }
-	    free_tv(tv);
+	    if (tv != &err_tv)
+		free_tv(tv);
 	}
     }
     else if (p_verbose > 2)
@@ -1119,7 +1124,8 @@
 
 	    /* Wait for up to 2 seconds.
 	     * TODO: use timeout set on the channel. */
-	    if (channel_wait(channels[ch_idx].ch_fd, 2000) == FAIL)
+	    if (channels[ch_idx].ch_fd < 0
+			|| channel_wait(channels[ch_idx].ch_fd, 2000) == FAIL)
 		break;
 	    channel_read(ch_idx);
 	}
