qemuDomainSnapshotPrepare: Don't always assume vm->def->os.loader

In 9e2465834 a check that denies internal snapshots when pflash
based loader is configured for the domain. However, if there's
none and an user tries to do an internal snapshot they will
witness daemon crash as in that case vm->def->os.loader is NULL
and we dereference it unconditionally.

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
Michal Privoznik 2017-03-30 14:03:45 +02:00
parent 385c1cc96c
commit fa3b510711

View File

@ -13889,6 +13889,7 @@ qemuDomainSnapshotPrepare(virConnectPtr conn,
* Avoid the issues by forbidding internal snapshot with pflash completely.
*/
if (found_internal &&
vm->def->os.loader &&
vm->def->os.loader->type == VIR_DOMAIN_LOADER_TYPE_PFLASH) {
virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s",
_("internal snapshots of a VM with pflash based "