From: Daniel P. Berrange Date: Mon, 31 Mar 2014 11:25:17 +0000 (+0100) Subject: Preserve error when tearing down nwfilter rules X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=89f244ba7c305e4193d1d7c860ef0c3fba579603;p=people%2Fliuw%2Flibxenctrl-split%2Flibvirt.git Preserve error when tearing down nwfilter rules 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 --- diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 403c9a9d3..6d800421c 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -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]);