cortex_a: fix a potential memory leak in cortex_a_target_create()
authorAntonio Borneo <borneo.antonio@gmail.com>
Fri, 15 Feb 2019 20:33:34 +0000 (21:33 +0100)
committerTomas Vanek <vanekt@fbl.cz>
Mon, 25 Feb 2019 21:53:30 +0000 (21:53 +0000)
commit3b39618eb5ab2bcceb00acaba3df303c4d9fa51e
tree04590c70ca484a10029d0422b659436e7ee290e3
parent6f66267f853b6c65f47ba686da562c95f0482714
cortex_a: fix a potential memory leak in cortex_a_target_create()

If the function cortex_a_target_create() or the function
cortex_r4_target_create() exit for an error, the value of pointer
cortex_a get lost, causing a memory leak.

Move the allocation of cortex_a after the check on the parameters.
While there, add checks on the value returned by calloc().

Issue highlighted by clang 7.0.0.

Change-Id: Ic6eeb9c3b39922d016f6d0319eada1a97a6681f0
Signed-off-by: Antonio Borneo <borneo.antonio@gmail.com>
Reviewed-on: http://openocd.zylin.com/4925
Reviewed-by: Tomas Vanek <vanekt@fbl.cz>
Tested-by: jenkins
Reviewed-by: Matthias Welwarsky <matthias@welwarsky.de>
src/target/cortex_a.c