mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-02-24 12:22:20 +00:00
vbox_network: fix possible memory leak in vboxNetworkDefineCreateXML()
virNetworkDef was not freed if the function failed in the first two ifs, causing a possible memory leak. Signed-off-by: Kristina Hanicova <khanicov@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com> Signed-off-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
6d7a16361b
commit
ef83940524
@ -375,7 +375,7 @@ vboxNetworkDefineCreateXML(virConnectPtr conn, const char *xml, bool start)
|
|||||||
PRUnichar *networkNameUtf16 = NULL;
|
PRUnichar *networkNameUtf16 = NULL;
|
||||||
char *networkNameUtf8 = NULL;
|
char *networkNameUtf8 = NULL;
|
||||||
IHostNetworkInterface *networkInterface = NULL;
|
IHostNetworkInterface *networkInterface = NULL;
|
||||||
virNetworkDef *def = virNetworkDefParseString(xml, NULL);
|
virNetworkDef *def = NULL;
|
||||||
virNetworkIPDef *ipdef = NULL;
|
virNetworkIPDef *ipdef = NULL;
|
||||||
unsigned char uuid[VIR_UUID_BUFLEN];
|
unsigned char uuid[VIR_UUID_BUFLEN];
|
||||||
vboxIID vboxnetiid;
|
vboxIID vboxnetiid;
|
||||||
@ -394,7 +394,7 @@ vboxNetworkDefineCreateXML(virConnectPtr conn, const char *xml, bool start)
|
|||||||
|
|
||||||
VBOX_IID_INITIALIZE(&vboxnetiid);
|
VBOX_IID_INITIALIZE(&vboxnetiid);
|
||||||
|
|
||||||
if ((!def) ||
|
if (!(def = virNetworkDefParseString(xml, NULL)) ||
|
||||||
(def->forward.type != VIR_NETWORK_FORWARD_NONE) ||
|
(def->forward.type != VIR_NETWORK_FORWARD_NONE) ||
|
||||||
(def->nips == 0 || !def->ips))
|
(def->nips == 0 || !def->ips))
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
|
Loading…
x
Reference in New Issue
Block a user