]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
network: Have virNetworkObjNew lock the returned object
authorJohn Ferlan <jferlan@redhat.com>
Wed, 10 May 2017 12:40:40 +0000 (08:40 -0400)
committerJohn Ferlan <jferlan@redhat.com>
Wed, 16 Aug 2017 18:17:57 +0000 (14:17 -0400)
Forces callers to use the virNetworkObjEndAPI properly.

Signed-off-by: John Ferlan <jferlan@redhat.com>
src/conf/virnetworkobj.c
tests/networkxml2conftest.c

index 6752b3625ababe12b69489ac8b7e54da572737df..41a6c338093d540563019f8af11595a3683afe5f 100644 (file)
@@ -87,6 +87,8 @@ virNetworkObjNew(void)
     ignore_value(virBitmapSetBit(obj->classIdMap, 1));
     ignore_value(virBitmapSetBit(obj->classIdMap, 2));
 
+    virObjectLock(obj);
+
     return obj;
 
  error:
@@ -572,8 +574,6 @@ virNetworkObjAssignDefLocked(virNetworkObjListPtr nets,
         if (!(obj = virNetworkObjNew()))
               goto cleanup;
 
-        virObjectLock(obj);
-
         virUUIDFormat(def->uuid, uuidstr);
         if (virHashAddEntry(nets->objs, uuidstr, obj) < 0)
             goto cleanup;
index 684181009a730d155ceb7de01a9917e48179a267..4251a22f64e08165eb6363e06e1be11f699b2073 100644 (file)
@@ -67,7 +67,7 @@ testCompareXMLToConfFiles(const char *inxml, const char *outconf, dnsmasqCapsPtr
     VIR_FREE(actual);
     VIR_FREE(pidfile);
     virCommandFree(cmd);
-    virObjectUnref(obj);
+    virNetworkObjEndAPI(&obj);
     dnsmasqContextFree(dctx);
     return ret;
 }