From: Ján Tomko Date: Fri, 2 Mar 2018 14:12:49 +0000 (+0100) Subject: conf: set postParseFailed even without ALLOW_POST_PARSE_FAIL X-Git-Tag: v4.2.0-rc1~286 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=444f15adb8cda879e16c02abfa685c787ab1ca44;p=thirdparty%2Flibvirt.git conf: set postParseFailed even without ALLOW_POST_PARSE_FAIL We allow the postParse callbacks to fail for some reasons (missing emulator binary) when parsing the configs from /etc/libvirt. In that case, def->postParseFailed is set to true and the post parse callbacks are re-executed on domain startup. However this bool was only set when virDomainDefPostParse was called with the ALLOW_POST_PARSE_FAIL flag set. If the callback failed again on domain startup, the bool would be reset and subsequent startups would not attempt to reexecute the callback. Signed-off-by: Ján Tomko --- diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index fcafc8b2fa..a248d73de3 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -5027,6 +5027,9 @@ virDomainDefPostParseCheckFailure(virDomainDefPtr def, unsigned int parseFlags, int ret) { + if (ret != 0) + def->postParseFailed = true; + if (ret <= 0) return ret; @@ -5034,7 +5037,6 @@ virDomainDefPostParseCheckFailure(virDomainDefPtr def, return -1; virResetLastError(); - def->postParseFailed = true; return 0; }