diff --git a/src/evalvars.c b/src/evalvars.c
index 62728ed..d4dd0ad 100644
--- a/src/evalvars.c
+++ b/src/evalvars.c
@@ -781,8 +781,15 @@
     int		count = 0;
     int		heredoc_in_string = FALSE;
     char_u	*line_arg = NULL;
+    char_u	*nl_ptr = vim_strchr(cmd, '\n');
 
-    if (eap->ea_getline == NULL && vim_strchr(cmd, '\n') == NULL)
+    if (nl_ptr != NULL)
+    {
+	heredoc_in_string = TRUE;
+	line_arg = nl_ptr + 1;
+	*nl_ptr = NUL;
+    }
+    else if (eap->ea_getline == NULL)
     {
 	emsg(_(e_cannot_use_heredoc_here));
 	return NULL;
@@ -826,14 +833,8 @@
     if (*cmd != NUL && *cmd != comment_char)
     {
 	marker = skipwhite(cmd);
-	p = skiptowhite_or_nl(marker);
-	if (*p == NL)
-	{
-	    // heredoc in a string
-	    line_arg = p + 1;
-	    heredoc_in_string = TRUE;
-	}
-	else if (*skipwhite(p) != NUL && *skipwhite(p) != comment_char)
+	p = skiptowhite(marker);
+	if (*skipwhite(p) != NUL && *skipwhite(p) != comment_char)
 	{
 	    semsg(_(e_trailing_characters_str), p);
 	    return NULL;
