libxl: Don't free domain death event

Callers should not free death events provided by libxl_evdisable_FOO().
This commit is contained in:
Jim Fehlig 2013-01-15 15:50:35 -07:00
parent f426ab08fb
commit 7459cae9b0

View File

@ -270,7 +270,6 @@ libxlDomainObjPrivateAlloc(void)
return NULL;
libxl_ctx_alloc(&priv->ctx, LIBXL_VERSION, 0, libxl_driver->logger);
priv->deathW = NULL;
libxl_osevent_register_hooks(priv->ctx, &libxl_event_callbacks, priv);
return priv;
@ -281,10 +280,8 @@ libxlDomainObjPrivateFree(void *data)
{
libxlDomainObjPrivatePtr priv = data;
if (priv->deathW) {
if (priv->deathW)
libxl_evdisable_domain_death(priv->ctx, priv->deathW);
VIR_FREE(priv->deathW);
}
libxl_ctx_free(priv->ctx);
VIR_FREE(priv);
@ -604,9 +601,10 @@ libxlCreateDomEvents(virDomainObjPtr vm)
return 0;
error:
if (priv->deathW)
if (priv->deathW) {
libxl_evdisable_domain_death(priv->ctx, priv->deathW);
VIR_FREE(priv->deathW);
priv->deathW = NULL;
}
return -1;
}