On Thu, May 17, 2012 at 11:20 AM, Yonit Halperin <yhalp...@redhat.com> wrote:
> +static void spice_main_channel_reset_capabilties(SpiceChannel *channel)
> +{
> +    spice_channel_set_capability(SPICE_CHANNEL(channel), 
> SPICE_MAIN_CAP_SEMI_SEAMLESS_MIGRATE);
> +    spice_channel_set_capability(SPICE_CHANNEL(channel), 
> SPICE_MAIN_CAP_NAME_AND_UUID);
> +}
> +

It should chain up to call the default/overriden
spice_channel_reset_capabilities().

I guess calling parent_class->reset_capabilties(channel); first.

Otherwise, since we may want to clear in all cases:

replace channel_reset():
{
-    SPICE_CHANNEL_GET_CLASS(channel)->channel_reset_capabilities(channel);
+   spice_channel_reset_capabilities(channel)
}

And call the virtual method in spice_channel_reset_capabilities()

static void spice_channel_reset_capabilities(SpiceChannel *channel)
{

    SpiceChannelPrivate *c = SPICE_CHANNEL_GET_PRIVATE(channel);
    g_array_set_size(c->caps, 0);
+  if (SPICE_CHANNEL_GET_CLASS(channel)->channel_reset_capabilities)
+   SPICE_CHANNEL_GET_CLASS(channel)->channel_reset_capabilities(channel);
}


-- 
Marc-André Lureau
_______________________________________________
Spice-devel mailing list
Spice-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/spice-devel

Reply via email to