/* Immutable pointer, self-locking APIs */
virDomainObjListPtr domains;
- /* Lazy-load on first use. Unsafe. XXX */
+ /* Immutable pointer */
char *qemuImgBinary;
/* Immutable pointer, lockless APIs. Pointless abstraction */
const char *
qemuFindQemuImgBinary(virQEMUDriverPtr driver)
{
- if (!driver->qemuImgBinary) {
- driver->qemuImgBinary = virFindFileInPath("kvm-img");
- if (!driver->qemuImgBinary)
- driver->qemuImgBinary = virFindFileInPath("qemu-img");
- if (!driver->qemuImgBinary)
- virReportError(VIR_ERR_INTERNAL_ERROR,
- "%s", _("unable to find kvm-img or qemu-img"));
- }
+ if (!driver->qemuImgBinary)
+ virReportError(VIR_ERR_INTERNAL_ERROR,
+ "%s", _("unable to find kvm-img or qemu-img"));
return driver->qemuImgBinary;
}
virStrerror(-rc, ebuf, sizeof(ebuf)));
}
+ qemu_driver->qemuImgBinary = virFindFileInPath("kvm-img");
+ if (!qemu_driver->qemuImgBinary)
+ qemu_driver->qemuImgBinary = virFindFileInPath("qemu-img");
if (!(qemu_driver->lockManager =
virLockManagerPluginNew(cfg->lockManagerName ?