If xc_gntshr_open failed the only thing to cleanup is free allocated
memory. So instead of calling libxenvchan_close (which assume
valid calculated buffers being mmaped already) free memory and return.
Signed-off-by: Marek Marczykowski-Górecki
---
tools/libvchan/init.c | 6 --
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/tools/libvchan/init.c b/tools/libvchan/init.c
index 83e1dee..e53f3a7 100644
--- a/tools/libvchan/init.c
+++ b/tools/libvchan/init.c
@@ -329,8 +329,10 @@ struct libxenvchan *libxenvchan_server_init(struct
xentoollog_logger *logger,
}
ctrl->gntshr = xengntshr_open(logger, 0);
- if (!ctrl->gntshr)
- goto out;
+ if (!ctrl->gntshr) {
+ free(ctrl);
+ return 0;
+ }
if (init_evt_srv(ctrl, domain, logger))
goto out;
--
2.7.5
___
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel