libxl: fix segfault when domain create fail

there is a segfault in libxl logging in libxl_ctx_free when domain
create fail. because the log output handler vmessage is freed by
xtl_logger_destroy before libxl_ctx_free in virDomainObjListRemove.
move xtl_logger_destroy after libxl_ctx_free could fix this bug.

Signed-off-by: Bamvor Jian Zhang <bjzhang@suse.com>
This commit is contained in:
Bamvor Jian Zhang 2013-12-20 15:14:42 +08:00 committed by Jim Fehlig
parent f9ee91d355
commit b03eba1376
1 changed files with 2 additions and 3 deletions

View File

@ -354,12 +354,11 @@ libxlDomainObjPrivateDispose(void *obj)
libxl_evdisable_domain_death(priv->ctx, priv->deathW);
virChrdevFree(priv->devs);
xtl_logger_destroy(priv->logger);
libxl_ctx_free(priv->ctx);
if (priv->logger_file)
VIR_FORCE_FCLOSE(priv->logger_file);
libxl_ctx_free(priv->ctx);
xtl_logger_destroy(priv->logger);
}
static void