[Spice-devel] [PATCH 5/7] Don't increment num_clients_mig_wait twice

Frediano Ziglio fziglio at redhat.com
Wed Oct 12 10:57:07 UTC 2016


> 
> When MainChannelClient was split to a separate file, the responsibility
> for incrementing this field was supposed to belong to the MainChannel
> function (main_channel_connect_semi_seamless()), but by mistake it was
> incremented both there and in the client function
> (main_channel_client_connect_semi_seamless()).
> 
> The bug was introduced in a11b785f191d2381932f8c1bb6281539f2afe483
> ---
>  server/main-channel-client.c | 2 --
>  1 file changed, 2 deletions(-)
> 
> diff --git a/server/main-channel-client.c b/server/main-channel-client.c
> index b30083f..0913028 100644
> --- a/server/main-channel-client.c
> +++ b/server/main-channel-client.c
> @@ -704,7 +704,6 @@ void main_channel_client_migrate(RedChannelClient *rcc)
>  gboolean main_channel_client_connect_semi_seamless(MainChannelClient *mcc)
>  {
>      RedChannelClient *rcc = RED_CHANNEL_CLIENT(mcc);
> -    MainChannel* main_channel =
> MAIN_CHANNEL(red_channel_client_get_channel(rcc));
>      if (red_channel_client_test_remote_cap(rcc,
>                                             SPICE_MAIN_CAP_SEMI_SEAMLESS_MIGRATE))
>                                             {
>          RedClient *client = red_channel_client_get_client(rcc);
> @@ -718,7 +717,6 @@ gboolean
> main_channel_client_connect_semi_seamless(MainChannelClient *mcc)
>              mcc->priv->mig_wait_connect = TRUE;
>          }
>          mcc->priv->mig_connect_ok = FALSE;
> -        main_channel->num_clients_mig_wait++;
>          return TRUE;
>      }
>      return FALSE;

Acked-by: Frediano Ziglio <fziglio at redhat.com>

I think we have a lack of testing, at least fast ones.
How did you discover this? Did you manage to reproduce the issue?

Frediano


More information about the Spice-devel mailing list