From 46bcaec696ae0974b47aeaea876737f13d0c55e5 Mon Sep 17 00:00:00 2001
From: Andreas Fritiofson <andreas.fritiofson@gmail.com>
Date: Tue, 19 Mar 2013 13:58:24 +0000
Subject: [PATCH] ft2232: remove ft2232_large_scan memory leak

This is a very long outstanding issue see:
http://lists.berlios.de/pipermail/openocd-development/2011-June/019404.html

As this driver is deprecated the fix is added to purely to reduce the warnings
reported by clang.

Change-Id: I3a16a704e0e8db27efda50fdcfdd35abf5ebed0f
Signed-off-by: Spencer Oliver <spen@spen-soft.co.uk>
Reviewed-on: http://openocd.zylin.com/1278
Tested-by: jenkins
---
 src/jtag/drivers/ft2232.c | 7 +++++++
 1 file changed, 7 insertions(+)

diff --git a/src/jtag/drivers/ft2232.c b/src/jtag/drivers/ft2232.c
index 4b3360fe7..fed829856 100644
--- a/src/jtag/drivers/ft2232.c
+++ b/src/jtag/drivers/ft2232.c
@@ -1108,6 +1108,11 @@ static int ft2232_large_scan(struct scan_command *cmd,
 	int retval;
 	int thisrun_read = 0;
 
+	if (!receive_buffer) {
+		LOG_ERROR("failed to allocate memory");
+		exit(-1);
+	}
+
 	if (cmd->ir_scan) {
 		LOG_ERROR("BUG: large IR scans are not supported");
 		exit(-1);
@@ -1273,6 +1278,8 @@ static int ft2232_large_scan(struct scan_command *cmd,
 			(int)bytes_read);
 	}
 
+	free(receive_buffer);
+
 	return ERROR_OK;
 }
 
-- 
GitLab