patch 8.2.1720: Vim9: memory leak with heredoc that isn't executed

Problem:    Vim9: memory leak with heredoc that isn't executed. (Dominique
            Pellé)
Solution:   Don't clear the list items. (closes #6991)
diff --git a/src/vim9compile.c b/src/vim9compile.c
index 1edf48c..52651f3 100644
--- a/src/vim9compile.c
+++ b/src/vim9compile.c
@@ -4622,15 +4622,18 @@
 	eap->cookie = cctx;
 	l = heredoc_get(eap, op + 3, FALSE);
 
-	// Push each line and the create the list.
-	FOR_ALL_LIST_ITEMS(l, li)
+	if (cctx->ctx_skip != SKIP_YES)
 	{
-	    generate_PUSHS(cctx, li->li_tv.vval.v_string);
-	    li->li_tv.vval.v_string = NULL;
+	    // Push each line and the create the list.
+	    FOR_ALL_LIST_ITEMS(l, li)
+	    {
+		generate_PUSHS(cctx, li->li_tv.vval.v_string);
+		li->li_tv.vval.v_string = NULL;
+	    }
+	    generate_NEWLIST(cctx, l->lv_len);
+	    type = &t_list_string;
+	    member_type = &t_list_string;
 	}
-	generate_NEWLIST(cctx, l->lv_len);
-	type = &t_list_string;
-	member_type = &t_list_string;
 	list_free(l);
 	p += STRLEN(p);
 	end = p;