From: Maxim Nestratov Date: Thu, 19 Mar 2015 14:43:21 +0000 (+0300) Subject: parallels: fix libvirt crash if parallelsNetworkOpen fails X-Git-Tag: v1.2.14-rc1~81 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a4da09d20abf05804620b41fff5e6cf28b5e007f;p=thirdparty%2Flibvirt.git parallels: fix libvirt crash if parallelsNetworkOpen fails If, by any reason, parallelsNetworkOpen fails it dereferences newly allocated privconn->networks via virObjectUnref, which in turn deallocates its memory. Subsequent call of parallelsNetworkClose calls virObjectUnref that leads to double memory free. To prevent this we should zero privconn->networks to make all subsequent virObjectUnref be safe. Signed-off-by: Maxim Nestratov --- diff --git a/src/parallels/parallels_network.c b/src/parallels/parallels_network.c index 8cc0582f26..8caad4a4a0 100644 --- a/src/parallels/parallels_network.c +++ b/src/parallels/parallels_network.c @@ -348,6 +348,7 @@ parallelsNetworkOpen(virConnectPtr conn, return VIR_DRV_OPEN_SUCCESS; error: virObjectUnref(privconn->networks); + privconn->networks = NULL; return VIR_DRV_OPEN_DECLINED; }