mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
vz: fix notification subscription
Bug cause: Update the domain that is subscribed to hypervisor notification. LoadDomain() rewrites notifications fields in vzDomObj structure and makes domain as "unsubscribed". Fix: Initialize notification fields in vzDomObj only if we create a new domain. And do not reinitialize these fields if we update domain (by calling LoadDomain with olddom argument)
This commit is contained in:
parent
a7b2257e9a
commit
d5f0cf990b
@ -1275,6 +1275,12 @@ prlsdkLoadDomain(vzConnPtr privconn,
|
||||
if (!olddom) {
|
||||
if (VIR_ALLOC(pdom) < 0)
|
||||
goto error;
|
||||
pdom->cache.stats = PRL_INVALID_HANDLE;
|
||||
pdom->cache.count = -1;
|
||||
if (virCondInit(&pdom->cache.cond) < 0) {
|
||||
virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("cannot initialize condition"));
|
||||
goto error;
|
||||
}
|
||||
} else {
|
||||
pdom = olddom->privateData;
|
||||
}
|
||||
@ -1286,13 +1292,6 @@ prlsdkLoadDomain(vzConnPtr privconn,
|
||||
|
||||
def->id = -1;
|
||||
|
||||
pdom->cache.stats = PRL_INVALID_HANDLE;
|
||||
pdom->cache.count = -1;
|
||||
if (virCondInit(&pdom->cache.cond) < 0) {
|
||||
virReportError(VIR_ERR_INTERNAL_ERROR, "%s", _("cannot initialize condition"));
|
||||
goto error;
|
||||
}
|
||||
|
||||
if (prlsdkGetDomainIds(sdkdom, &def->name, def->uuid) < 0)
|
||||
goto error;
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user