[PATCH 20/36] datatypes: convert virNetworkPort to GObject
Rafael Fonseca
r4f4rfs at gmail.com
Tue Apr 21 13:05:26 UTC 2020
On Wed, Apr 8, 2020 at 11:37 PM Jonathon Jongsma <jjongsma at redhat.com> wrote:
>
> On Fri, 2020-04-03 at 17:15 +0200, Rafael Fonseca wrote:
> > @@ -482,14 +495,14 @@ virNetworkFinalize(GObject *obj)
> > * @uuid: pointer to the uuid
> > *
> > * Allocates a new network port object. When the object is no longer
> > needed,
> > - * virObjectUnref() must be called in order to not leak data.
> > + * g_object_unref() must be called in order to not leak data.
> > *
> > * Returns a pointer to the network port object, or NULL on error.
> > */
> > virNetworkPortPtr
> > virGetNetworkPort(virNetworkPtr net, const unsigned char *uuid)
> > {
> > - virNetworkPortPtr ret = NULL;
> > + g_autoptr(virNetworkPort) ret = NULL;
> >
> > if (virDataTypesInitialize() < 0)
> > return NULL;
> > @@ -497,21 +510,19 @@ virGetNetworkPort(virNetworkPtr net, const
> > unsigned char *uuid)
> > virCheckNetworkGoto(net, error);
> > virCheckNonNullArgGoto(uuid, error);
> >
> > - if (!(ret = virObjectNew(virNetworkPortClass)))
> > - goto error;
> > + ret = VIR_NETWORK_PORT(g_object_new(VIR_TYPE_NETWORK_PORT,
> > NULL));
> >
> > ret->net = g_object_ref(net);
> > memcpy(&(ret->uuid[0]), uuid, VIR_UUID_BUFLEN);
> >
> > - return ret;
> > + return g_steal_pointer(&ret);
> >
> > error:
> > - virObjectUnref(ret);
> > return NULL;
> > }
>
> As far as I can tell, you removed the only 'goto error' statement from
> this function, so the error: label can be removed completely.
Not really because of the virCheckNetworkGoto and
virCheckNonNullArgGoto macros. However, I can change them
's/Goto/Return/' so thanks for pointing that out.
Att.
--
Rafael Fonseca
More information about the libvir-list
mailing list