[Spice-devel] [PATCH 02/11] Handle reference for RedPipeItem in RedChannel
Jonathon Jongsma
jjongsma at redhat.com
Fri May 20 20:24:44 UTC 2016
Better.
Acked-by: Jonathon Jongsma <jjongsma at redhat.com>
On Fri, 2016-05-20 at 14:01 +0100, Frediano Ziglio wrote:
> Remove the need to release the item inside send_item callbacks.
> This looks like a partial rollback of previous patch but is
> to make clear the intention of the change.
> The lifetime of items could extend a bit further but there
> are no cases this small lag should cause problems.
>
> Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
> ---
> server/cursor-channel.c | 1 -
> server/dcc-send.c | 2 --
> server/inputs-channel.c | 1 -
> server/main-channel.c | 2 --
> server/red-channel.c | 2 +-
> server/smartcard.c | 2 --
> server/spicevmc.c | 2 --
> 7 files changed, 1 insertion(+), 11 deletions(-)
>
> diff --git a/server/cursor-channel.c b/server/cursor-channel.c
> index 104bf51..949cbc4 100644
> --- a/server/cursor-channel.c
> +++ b/server/cursor-channel.c
> @@ -336,7 +336,6 @@ static void cursor_channel_send_item(RedChannelClient
> *rcc, RedPipeItem *pipe_it
> spice_error("invalid pipe item type");
> }
>
> - red_pipe_item_unref(pipe_item);
> red_channel_client_begin_send_message(rcc);
> }
>
> diff --git a/server/dcc-send.c b/server/dcc-send.c
> index f0f2e16..05da07f 100644
> --- a/server/dcc-send.c
> +++ b/server/dcc-send.c
> @@ -2455,8 +2455,6 @@ void dcc_send_item(DisplayChannelClient *dcc,
> RedPipeItem *pipe_item)
> spice_warn_if_reached();
> }
>
> - red_pipe_item_unref(pipe_item);
> -
> // a message is pending
> if (red_channel_client_send_message_pending(rcc)) {
> begin_send_message(rcc);
> diff --git a/server/inputs-channel.c b/server/inputs-channel.c
> index 3218a48..4b5813f 100644
> --- a/server/inputs-channel.c
> +++ b/server/inputs-channel.c
> @@ -289,7 +289,6 @@ static void inputs_channel_send_item(RedChannelClient
> *rcc, RedPipeItem *base)
> spice_warning("invalid pipe iten %d", base->type);
> break;
> }
> - red_pipe_item_unref(base);
> red_channel_client_begin_send_message(rcc);
> }
>
> diff --git a/server/main-channel.c b/server/main-channel.c
> index 219212c..70aaff7 100644
> --- a/server/main-channel.c
> +++ b/server/main-channel.c
> @@ -723,7 +723,6 @@ static void main_channel_send_item(RedChannelClient *rcc,
> RedPipeItem *base)
> spice_printerr("Init msg for client %p was not sent yet "
> "(client is probably during semi-seamless migration).
> Ignoring msg type %d",
> rcc->client, base->type);
> - red_pipe_item_unref(base);
> return;
> }
> switch (base->type) {
> @@ -789,7 +788,6 @@ static void main_channel_send_item(RedChannelClient *rcc,
> RedPipeItem *base)
> main_channel_marshall_agent_connected(m, rcc, base);
> break;
> };
> - red_pipe_item_unref(base);
> red_channel_client_begin_send_message(rcc);
> }
>
> diff --git a/server/red-channel.c b/server/red-channel.c
> index 8226bc4..23defc0 100644
> --- a/server/red-channel.c
> +++ b/server/red-channel.c
> @@ -576,7 +576,7 @@ static void red_channel_client_send_item(RedChannelClient
> *rcc, RedPipeItem *ite
> break;
> default:
> rcc->channel->channel_cbs.send_item(rcc, item);
> - return;
> + break;
> }
> red_pipe_item_unref(item);
> }
> diff --git a/server/smartcard.c b/server/smartcard.c
> index e68ccdc..c39aeae 100644
> --- a/server/smartcard.c
> +++ b/server/smartcard.c
> @@ -498,10 +498,8 @@ static void smartcard_channel_send_item(RedChannelClient
> *rcc, RedPipeItem *item
> break;
> default:
> spice_error("bad pipe item %d", item->type);
> - red_pipe_item_unref(item);
> return;
> }
> - red_pipe_item_unref(item);
> red_channel_client_begin_send_message(rcc);
> }
>
> diff --git a/server/spicevmc.c b/server/spicevmc.c
> index be51d54..1e68909 100644
> --- a/server/spicevmc.c
> +++ b/server/spicevmc.c
> @@ -425,10 +425,8 @@ static void
> spicevmc_red_channel_send_item(RedChannelClient *rcc,
> break;
> default:
> spice_error("bad pipe item %d", item->type);
> - red_pipe_item_unref(item);
> return;
> }
> - red_pipe_item_unref(item);
> red_channel_client_begin_send_message(rcc);
> }
>
More information about the Spice-devel
mailing list