Adjust virLXCDriverGetCapabilities to fill in driver->caps if it is
empty, regardless of the passed 'refresh' value. This matches the
pattern used in virQEMUDriverGetCapabilities
This fixes LXC XML startup parsing for me
Signed-off-by: Cole Robinson <crobinso(a)redhat.com>
---
v2:
Use the virQEMUDriverGetCapabilities like danpb suggested
src/lxc/lxc_conf.c | 8 ++++++++
1 file changed, 8 insertions(+)
diff --git a/src/lxc/lxc_conf.c b/src/lxc/lxc_conf.c
index 2df1537b22..adf7a0b66c 100644
--- a/src/lxc/lxc_conf.c
+++ b/src/lxc/lxc_conf.c
@@ -196,6 +196,14 @@ virCapsPtr virLXCDriverGetCapabilities(virLXCDriverPtr driver,
driver->caps = caps;
} else {
lxcDriverLock(driver);
+
+ if (driver->caps == NULL ||
+ driver->caps->nguests == 0) {
+ VIR_DEBUG("Capabilities didn't detect any guests. Forcing a "
+ "refresh.");
+ lxcDriverUnlock(driver);
+ return virLXCDriverGetCapabilities(driver, true);
+ }
}
ret = virObjectRef(driver->caps);
--
2.23.0