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 */
abort = abort || set_ref_in_python3(copyID);
#endif
+#ifdef FEAT_CHANNEL
+ abort = abort || set_ref_in_channel(copyID);
+#endif
+
if (!abort)
{
/*
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)
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;
}
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 : */
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 1261,
/**/
1260,
/**/