patch 8.0.1083: leaking memory in input part of channel
Problem: Leaking memory in input part of channel.
Solution: Clear the input part of channel. Free the entry. Move failing
command test to a separate file to avoid bogus leak reports
clouding tests that should not leak.
diff --git a/src/channel.c b/src/channel.c
index 0e9a580..fa1898d 100644
--- a/src/channel.c
+++ b/src/channel.c
@@ -2939,6 +2939,7 @@
wq->wq_prev = NULL;
else
wq->wq_next->wq_prev = NULL;
+ vim_free(entry);
}
/*
@@ -2990,7 +2991,7 @@
channel_clear_one(channel, PART_SOCK);
channel_clear_one(channel, PART_OUT);
channel_clear_one(channel, PART_ERR);
- /* there is no callback or queue for PART_IN */
+ channel_clear_one(channel, PART_IN);
free_callback(channel->ch_callback, channel->ch_partial);
channel->ch_callback = NULL;
channel->ch_partial = NULL;