[libvirt] [PATCH 2/3] Changes per Jim Meyering

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Handle failure of virConnectNumOfDomains and virConnectNumOfDefinedDomains
Changed malloc to use size of variable, not type
Removed unneeded NULL check before free
Removed unneeded initialization of several variables
Changed assignment to use the ternary operator
---
 examples/hellolibvirt/hellolibvirt.c |   28 ++++++++++++++++++----------
 1 files changed, 18 insertions(+), 10 deletions(-)

diff --git a/examples/hellolibvirt/hellolibvirt.c b/examples/hellolibvirt/hellolibvirt.c
index 22d3309..cc1af0f 100644
--- a/examples/hellolibvirt/hellolibvirt.c
+++ b/examples/hellolibvirt/hellolibvirt.c
@@ -1,6 +1,8 @@
 /* This file contains trivial example code to connect to the running
  * hypervisor and gather a few bits of information.  */
 
+#include <config.h>
+
 #include <stdio.h>
 #include <stdlib.h>
 #include <libvirt/libvirt.h>
@@ -52,12 +54,23 @@ showDomains(virConnectPtr conn)
     char **nameList = NULL;
 
     numActiveDomains = virConnectNumOfDomains(conn);
+    if (-1 == numActiveDomains) {
+        ret = 1;
+        printf("Failed to get number of active domains\n");
+        goto out;
+    }
+
     numInactiveDomains = virConnectNumOfDefinedDomains(conn);
+    if (-1 == numInactiveDomains) {
+        ret = 1;
+        printf("Failed to get number of inactive domains\n");
+        goto out;
+    }
 
     printf("There are %d active and %d inactive domains\n",
            numActiveDomains, numInactiveDomains);
 
-    nameList = malloc(sizeof(char *) * (unsigned int)numInactiveDomains);
+    nameList = malloc(sizeof(*nameList) * numInactiveDomains);
 
     if (NULL == nameList) {
         ret = 1;
@@ -88,10 +101,7 @@ showDomains(virConnectPtr conn)
     }
 
 out:
-    if (NULL != nameList) {
-        free(nameList);
-    }
-
+    free(nameList);
     return ret;
 }
 
@@ -100,14 +110,12 @@ int
 main(int argc, char *argv[])
 {
     int ret = 0;
-    virConnectPtr conn = NULL;
-    char *uri = NULL;
+    virConnectPtr conn;
+    char *uri;
 
     printf("Attempting to connect to hypervisor\n");
 
-    if (argc > 0) {
-        uri = argv[1];
-    }
+    uri = (argc > 0 ? argv[1] : NULL);
 
     /* virConnectOpenAuth is called here with all default parameters,
      * except, possibly, the URI of the hypervisor. */
-- 
1.6.0.6

--
Libvir-list mailing list
Libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list

[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]