[Spice-devel] [PATCH] channel: simplify red_channel_client_send_item
Frediano Ziglio
fziglio at redhat.com
Thu Jan 14 05:38:14 PST 2016
---
server/red-channel.c | 13 +++----------
1 file changed, 3 insertions(+), 10 deletions(-)
diff --git a/server/red-channel.c b/server/red-channel.c
index 704f319..306c87d 100644
--- a/server/red-channel.c
+++ b/server/red-channel.c
@@ -560,33 +560,26 @@ static void red_channel_client_send_ping(RedChannelClient *rcc)
static void red_channel_client_send_item(RedChannelClient *rcc, PipeItem *item)
{
- int handled = TRUE;
-
spice_assert(red_channel_client_no_item_being_sent(rcc));
red_channel_client_reset_send_data(rcc);
switch (item->type) {
case PIPE_ITEM_TYPE_SET_ACK:
red_channel_client_send_set_ack(rcc);
- free(item);
break;
case PIPE_ITEM_TYPE_MIGRATE:
red_channel_client_send_migrate(rcc);
- free(item);
break;
case PIPE_ITEM_TYPE_EMPTY_MSG:
red_channel_client_send_empty_msg(rcc, item);
- free(item);
break;
case PIPE_ITEM_TYPE_PING:
red_channel_client_send_ping(rcc);
- free(item);
break;
default:
- handled = FALSE;
- }
- if (!handled) {
- rcc->channel->channel_cbs.send_item(rcc, item);
+ rcc->channel->channel_cbs.send_item(rcc, item);
+ return;
}
+ free(item);
}
static void red_channel_client_release_item(RedChannelClient *rcc, PipeItem *item, int item_pushed)
--
2.4.3
More information about the Spice-devel
mailing list