]> xenbits.xensource.com Git - libvirt.git/commitdiff
qemuMonitorOpenUnix: Refactor cleanup
authorPeter Krempa <pkrempa@redhat.com>
Thu, 3 Feb 2022 12:51:34 +0000 (13:51 +0100)
committerPeter Krempa <pkrempa@redhat.com>
Thu, 10 Feb 2022 12:13:28 +0000 (13:13 +0100)
Use VIR_AUTOFREE for the temp socket so that the 'error:' label can be
removed.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Tim Wiederhake <twiederh@redhat.com>
src/qemu/qemu_monitor.c

index fcd39b80c66e2b838e8b67360dfdbe691215eeda..04b5cce6fb4d92327511dff5e3f06e5d171aaa9c 100644 (file)
@@ -233,7 +233,7 @@ qemuMonitorOpenUnix(const char *monitor,
                     unsigned long long timeout)
 {
     struct sockaddr_un addr;
-    int monfd;
+    VIR_AUTOCLOSE monfd = -1;
     virTimeBackOffVar timebackoff;
     int ret = -1;
 
@@ -248,12 +248,12 @@ qemuMonitorOpenUnix(const char *monitor,
     if (virStrcpyStatic(addr.sun_path, monitor) < 0) {
         virReportError(VIR_ERR_INTERNAL_ERROR,
                        _("Monitor path %s too big for destination"), monitor);
-        goto error;
+        return -1;
     }
 
     if (retry) {
         if (virTimeBackOffStart(&timebackoff, 1, timeout * 1000) < 0)
-            goto error;
+            return -1;
         while (virTimeBackOffWait(&timebackoff)) {
             ret = connect(monfd, (struct sockaddr *)&addr, sizeof(addr));
 
@@ -269,28 +269,27 @@ qemuMonitorOpenUnix(const char *monitor,
 
             virReportSystemError(errno, "%s",
                                  _("failed to connect to monitor socket"));
-            goto error;
+            return -1;
         }
 
         if (ret != 0) {
             virReportSystemError(errno, "%s",
                                  _("monitor socket did not show up"));
-            goto error;
+            return -1;
         }
     } else {
         ret = connect(monfd, (struct sockaddr *) &addr, sizeof(addr));
         if (ret < 0) {
             virReportSystemError(errno, "%s",
                                  _("failed to connect to monitor socket"));
-            goto error;
+            return -1;
         }
     }
 
-    return monfd;
+    ret = monfd;
+    monfd = -1;
 
- error:
-    VIR_FORCE_CLOSE(monfd);
-    return -1;
+    return ret;
 }