]> xenbits.xensource.com Git - people/liuw/libxenctrl-split/libvirt.git/commitdiff
Preserve error when tearing down nwfilter rules
authorDaniel P. Berrange <berrange@redhat.com>
Mon, 31 Mar 2014 11:25:17 +0000 (12:25 +0100)
committerDaniel P. Berrange <berrange@redhat.com>
Fri, 25 Apr 2014 14:44:09 +0000 (15:44 +0100)
When a VM fails to launch due to error creating nwfilter
rules, we must avoid overwriting the original error when
tearing down the partially created rules.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
src/qemu/qemu_command.c

index 403c9a9d3b86ea66fd8ead0a5888613792d733ee..6d800421c0aa4babd98bb7812278346e40dc353a 100644 (file)
@@ -7640,8 +7640,12 @@ qemuBuildInterfaceCommandLine(virCommandPtr cmd,
 
     ret = 0;
  cleanup:
-    if (ret < 0)
+    if (ret < 0) {
+        virErrorPtr saved_err = virSaveLastError();
         virDomainConfNWFilterTeardown(net);
+        virSetError(saved_err);
+        virFreeError(saved_err);
+    }
     for (i = 0; tapfd && i < tapfdSize && tapfd[i] >= 0; i++) {
         if (ret < 0)
             VIR_FORCE_CLOSE(tapfd[i]);