[libvirt] [glib 2/5] gconfig: DomainDevice now instantiable

Daniel P. Berrange berrange at redhat.com
Wed Nov 2 13:56:48 UTC 2016


On Tue, Nov 01, 2016 at 05:46:04PM +0100, Zeeshan Ali wrote:
> We'll need to instatiate DomainDevice baseclass itself for unknown (think
> new devices added to libvirt XML) devices in a following patch. This
> change makes that possible.
> 
> This doesn't break any API or ABI to the best of my knowledge and this
> assumption was confirmed by Emmanuele Bassi and Tim-Philipp Muller.

G_DEFINE_ABSTRACT_TYPE expands to

    G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, G_TYPE_FLAG_ABSTRACT, {})

while G_DEFINE_TYPE expands to

    G_DEFINE_TYPE_EXTENDED (TN, t_n, T_P, 0, {})

so the only change is setting G_TYPE_FLAG_ABSTRACT, which is not
an ABI/API break. So agree that we're safe.

> ---
>  libvirt-gconfig/libvirt-gconfig-domain-device.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/libvirt-gconfig/libvirt-gconfig-domain-device.c b/libvirt-gconfig/libvirt-gconfig-domain-device.c
> index 8a75cea..f78173a 100644
> --- a/libvirt-gconfig/libvirt-gconfig-domain-device.c
> +++ b/libvirt-gconfig/libvirt-gconfig-domain-device.c
> @@ -33,7 +33,7 @@ struct _GVirConfigDomainDevicePrivate
>      gboolean unused;
>  };
>  
> -G_DEFINE_ABSTRACT_TYPE(GVirConfigDomainDevice, gvir_config_domain_device, GVIR_CONFIG_TYPE_OBJECT);
> +G_DEFINE_TYPE(GVirConfigDomainDevice, gvir_config_domain_device, GVIR_CONFIG_TYPE_OBJECT);
>  
>  
>  static void gvir_config_domain_device_class_init(GVirConfigDomainDeviceClass *klass)

ACK


Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://entangle-photo.org       -o-    http://search.cpan.org/~danberr/ :|




More information about the libvir-list mailing list