[libvirt] [PATCH 1/2] rpc: Actually increase reference count on @srv in virNetDaemonAddServer

Peter Krempa pkrempa at redhat.com
Thu Jun 18 09:44:55 UTC 2015


VIR_APPEND_ELEMENT would clear @srv to NULL after it successfully
inserted it thus the reference count could not be increased afterwards.

Switch to VIR_APPEND_ELEMENT_COPY. This fixes crash after terminating
the daemon.
---
 src/rpc/virnetdaemon.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/src/rpc/virnetdaemon.c b/src/rpc/virnetdaemon.c
index a6d6a4b..67dff14 100644
--- a/src/rpc/virnetdaemon.c
+++ b/src/rpc/virnetdaemon.c
@@ -162,7 +162,7 @@ virNetDaemonAddServer(virNetDaemonPtr dmn, virNetServerPtr srv)

     virObjectLock(dmn);

-    if (VIR_APPEND_ELEMENT(dmn->servers, dmn->nservers, srv) < 0)
+    if (VIR_APPEND_ELEMENT_COPY(dmn->servers, dmn->nservers, srv) < 0)
         goto cleanup;

     virObjectRef(srv);
-- 
2.4.1




More information about the libvir-list mailing list