From mboxrd@z Thu Jan 1 00:00:00 1970 From: Matthew Daley Subject: [PATCH 22/28] mini-os: fix various memory leaks in blkfront Date: Wed, 18 Sep 2013 15:37:58 +1200 Message-ID: <1379475484-25993-23-git-send-email-mattjd@gmail.com> References: <1379475484-25993-1-git-send-email-mattjd@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1379475484-25993-1-git-send-email-mattjd@gmail.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xen.org Cc: Samuel Thibault , Matthew Daley , Stefano Stabellini List-Id: xen-devel@lists.xenproject.org Coverity-ID: 1055814 Coverity-ID: 1055815 Signed-off-by: Matthew Daley --- extras/mini-os/blkfront.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/extras/mini-os/blkfront.c b/extras/mini-os/blkfront.c index ddcf665..aead6bd 100644 --- a/extras/mini-os/blkfront.c +++ b/extras/mini-os/blkfront.c @@ -250,7 +250,7 @@ error: void shutdown_blkfront(struct blkfront_dev *dev) { - char* err = NULL; + char* err = NULL, *err2; XenbusState state; char path[strlen(dev->backend) + strlen("/state") + 1]; @@ -295,12 +295,15 @@ void shutdown_blkfront(struct blkfront_dev *dev) close: if (err) free(err); - xenbus_unwatch_path_token(XBT_NIL, path, path); + err2 = xenbus_unwatch_path_token(XBT_NIL, path, path); + if (err2) free(err2); snprintf(nodename, sizeof(nodename), "%s/ring-ref", dev->nodename); - xenbus_rm(XBT_NIL, nodename); + err2 = xenbus_rm(XBT_NIL, nodename); + if (err2) free(err2); snprintf(nodename, sizeof(nodename), "%s/event-channel", dev->nodename); - xenbus_rm(XBT_NIL, nodename); + err2 = xenbus_rm(XBT_NIL, nodename); + if (err2) free(err2); if (!err) free_blkfront(dev); -- 1.7.10.4