This is an automated email from Gerrit. "Antonio Borneo <borneo.anto...@gmail.com>" just uploaded a new patch set to Gerrit, which you can find at https://review.openocd.org/c/openocd/+/7632
-- gerrit commit 9795a133e7f5e56ad6e697ca54fdbba71ffcb1cd Author: Antonio Borneo <borneo.anto...@gmail.com> Date: Sun Apr 30 22:57:59 2023 +0200 pld: gatemate: fix memory leak When gatemate_set_instr() fails, the array pointed by bit_file.raw_file.data is not freed. Issue identified by OpenOCD Jenkins clang build. Free the array while propagating the error. Change-Id: I2f7fadee903f9c65cdc9ab9b52ccb5803b48a59d Signed-off-by: Antonio Borneo <borneo.anto...@gmail.com> Fixes: 682f927f8e4e ("pld: add support for cologne chip gatemate fpgas") diff --git a/src/pld/gatemate.c b/src/pld/gatemate.c index afd27efca4..43b3f02d1d 100644 --- a/src/pld/gatemate.c +++ b/src/pld/gatemate.c @@ -192,8 +192,10 @@ static int gatemate_load(struct pld_device *pld_device, const char *filename) return retval; retval = gatemate_set_instr(tap, JTAG_CONFIGURE); - if (retval != ERROR_OK) + if (retval != ERROR_OK) { + free(bit_file.raw_file.data); return retval; + } struct scan_field field; field.num_bits = bit_file.raw_file.length * 8; --