On Wed, Jul 02, 2008 at 10:13:00PM +0200, Jim Meyering wrote:
> static virNetworkPtr testNetworkCreate(virConnectPtr conn,
const char *xml) {
> - int handle = -1;
> - virNetworkPtr net;
> + virNetworkDefPtr def;
> + virNetworkObjPtr net;
> GET_CONNECTION(conn, NULL);
>
> - if (xml == NULL) {
> - testError(conn, NULL, NULL, VIR_ERR_INVALID_ARG, __FUNCTION__);
> - return (NULL);
> - }
> + if ((def = virNetworkDefParse(conn, xml, NULL)) == NULL)
> + return NULL;
>
> - if (privconn->numNetworks == MAX_NETWORKS) {
> - testError(conn, NULL, NULL, VIR_ERR_INTERNAL_ERROR, _("too many
networks"));
> - return (NULL);
> - }
> + if ((net = virNetworkAssignDef(conn, &privconn->networks,
> + def)) == NULL)
Don't we need to call virNetworkDefFree(def) before returning?
No need as the 'net' object holds a pointer to the 'def'
struct _virDomainObj {
[...snip...]
virDomainDefPtr def; /* The current definition */
virDomainDefPtr newDef; /* New definition to activate at shutdown */
virDomainObjPtr next;
};
Regards,
Daniel
--
|: Red Hat, Engineering, London -o-
http://people.redhat.com/berrange/ :|
|:
http://libvirt.org -o-
http://virt-manager.org -o-
http://ovirt.org :|
|:
http://autobuild.org -o-
http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|