[Spice-devel] [PATCH spice-server v2 01/12] red-channel-client: Init pipe field during init

Jonathon Jongsma jjongsma at redhat.com
Wed Nov 2 15:42:53 UTC 2016


Acked-by: Jonathon Jongsma <jjongsma at redhat.com>


On Tue, 2016-11-01 at 11:07 +0000, Frediano Ziglio wrote:
> There was a chance that on error GQueue were not
> initialized but an attempt to destroy it is made.
> This ensures GQueue is initialized as soon as
> possible. Note that red_channel_client_initable_init
> is called after all init and construction callbacks.
> 
> Signed-off-by: Frediano Ziglio <fziglio at redhat.com>
> ---
>  server/red-channel-client.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/server/red-channel-client.c b/server/red-channel-
> client.c
> index c562e8e..3b2c24c 100644
> --- a/server/red-channel-client.c
> +++ b/server/red-channel-client.c
> @@ -354,6 +354,8 @@ red_channel_client_init(RedChannelClient *self)
>      self->priv->send_data.urgent.marshaller =
> spice_marshaller_new();
>  
>      self->priv->send_data.marshaller = self->priv-
> >send_data.main.marshaller;
> +
> +    g_queue_init(&self->priv->pipe);
>  }
>  
>  RedChannel* red_channel_client_get_channel(RedChannelClient *rcc)
> @@ -907,7 +909,6 @@ static gboolean
> red_channel_client_initable_init(GInitable *initable,
>      self->priv->outgoing.pos = 0;
>      self->priv->outgoing.size = 0;
>  
> -    g_queue_init(&self->priv->pipe);
>      if (self->priv->stream)
>          self->priv->stream->watch =
>              core->watch_add(core, self->priv->stream->socket,


More information about the Spice-devel mailing list