diff --git a/src/channel.c b/src/channel.c
index 1290171..0ae90a9 100644
--- a/src/channel.c
+++ b/src/channel.c
@@ -1315,4 +1315,29 @@
     return ret;
 }
 
+    int
+set_ref_in_channel(int copyID)
+{
+    int	    i;
+    int	    abort = FALSE;
+
+    for (i = 0; i < channel_count; ++i)
+    {
+	jsonq_T *head = &channels[i].ch_json_head;
+	jsonq_T *item = head->next;
+
+	while (item != head)
+	{
+	    list_T	*l = item->value->vval.v_list;
+
+	    if (l->lv_copyID != copyID)
+	    {
+		l->lv_copyID = copyID;
+		abort = abort || set_ref_in_list(l, copyID, NULL);
+	    }
+	    item = item->next;
+	}
+    }
+    return abort;
+}
 #endif /* FEAT_CHANNEL */
diff --git a/src/eval.c b/src/eval.c
index 892e14a..f13486f 100644
--- a/src/eval.c
+++ b/src/eval.c
@@ -6855,6 +6855,10 @@
     abort = abort || set_ref_in_python3(copyID);
 #endif
 
+#ifdef FEAT_CHANNEL
+    abort = abort || set_ref_in_channel(copyID);
+#endif
+
     if (!abort)
     {
 	/*
@@ -9842,6 +9846,7 @@
 	return;
 
     ch_idx = send_common(argvars, text, "sendexpr");
+    vim_free(text);
     if (ch_idx >= 0)
     {
 	if (channel_read_json_block(ch_idx, id, &listtv) == OK)
diff --git a/src/json.c b/src/json.c
index f97d283..b6fce02 100644
--- a/src/json.c
+++ b/src/json.c
@@ -533,10 +533,7 @@
 	if (res != NULL)
 	{
 	    res->v_type = VAR_STRING;
-	    if (ga.ga_data == NULL)
-		res->vval.v_string = NULL;
-	    else
-		res->vval.v_string = vim_strsave(ga.ga_data);
+	    res->vval.v_string = ga.ga_data;
 	}
 	return OK;
     }
diff --git a/src/proto/channel.pro b/src/proto/channel.pro
index f53ac66..197cddf 100644
--- a/src/proto/channel.pro
+++ b/src/proto/channel.pro
@@ -22,4 +22,5 @@
 int channel_select_setup(int maxfd_in, void *rfds_in);
 int channel_select_check(int ret_in, void *rfds_in);
 int channel_parse_messages(void);
+int set_ref_in_channel(int copyID);
 /* vim: set ft=c : */
diff --git a/src/version.c b/src/version.c
index 8611d49..1fbc721 100644
--- a/src/version.c
+++ b/src/version.c
@@ -743,6 +743,8 @@
 static int included_patches[] =
 {   /* Add new patch number below this line */
 /**/
+    1261,
+/**/
     1260,
 /**/
     1259,
