[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [libvirt-glib 03/37] Add gobject boilerplate for GVirConfigClock and GVirConfigTimer



On Fri, Nov 11, 2011 at 03:33:51PM +0100, Marc-André Lureau wrote:
> On Thu, Nov 10, 2011 at 9:33 PM, Christophe Fergeau <cfergeau redhat com> wrote:
> > +struct _GVirConfigClockPrivate
> > +{
> > +    gboolean unused;
> > +};
> 
> (does it really matter if the struct is empty?)

Yes, there's a runtime warning if sizeof(GVirConfigClockPrivate) == 0 when
associating the private structure with the class. Imo these "empty" private
structures should be removed at some point, they are here in all classes
because of copy/paste.

> 
> > +G_DEFINE_TYPE(GVirConfigClock, gvir_config_clock, GVIR_TYPE_CONFIG_OBJECT);
> > +
> > +
> > +static void gvir_config_clock_class_init(GVirConfigClockClass *klass)
> > +{
> > +
> > +    g_type_class_add_private(klass, sizeof(GVirConfigClockPrivate));
> > +}
> > +
> > +
> > +static void gvir_config_clock_init(GVirConfigClock *klock)
> > +{
> > +    GVirConfigClockPrivate *priv;
> > +
> > +    DEBUG("Init GVirConfigClock=%p", klock);
> > +
> > +    priv = klock->priv = GVIR_CONFIG_CLOCK_GET_PRIVATE(klock);
> > +
> > +    memset(priv, 0, sizeof(*priv));
> 
> in fact, memset is useless here, GObject are always initialized with
> 0's including private data (from what I understand of gobject code). I
> am going to send a patch to remove it on the whole code base.

Yep, this memset is present in the libvirt-gconfig file I used as a copy
and paste source, that's why it got everywhere.

Christophe

Attachment: pgp1qFnJ7RJ1u.pgp
Description: PGP signature


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]