From: Ian Jackson Date: Tue, 21 Jan 2014 18:45:31 +0000 (+0000) Subject: xenstore: xs_suspend_evtchn_port: always free portstr X-Git-Tag: archive/raspbian/4.8.0-1+rpi1~1^2~5644 X-Git-Url: https://dgit.raspbian.org/?a=commitdiff_plain;h=21b73527fb9615012b7d386357d31ff66b629cb8;p=xen.git xenstore: xs_suspend_evtchn_port: always free portstr If portstr!=NULL but plen==0 this function would leak portstr. Signed-off-by: Ian Jackson Acked-by: Ian Campbell --- diff --git a/tools/xenstore/xs.c b/tools/xenstore/xs.c index a636498f2e..dd03a85755 100644 --- a/tools/xenstore/xs.c +++ b/tools/xenstore/xs.c @@ -1095,12 +1095,15 @@ int xs_suspend_evtchn_port(int domid) portstr = xs_read(xs, XBT_NULL, path, &plen); xs_daemon_close(xs); - if (!portstr || !plen) - return -1; + if (!portstr || !plen) { + port = -1; + goto out; + } port = atoi(portstr); - free(portstr); +out: + free(portstr); return port; }