aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordaniel-k <github@daniel-krebs.net>2015-10-14 17:30:57 +0200
committerFreddie Chopin <freddie.chopin@gmail.com>2015-11-03 21:58:50 +0000
commit9bf5309ec7b343cc304f6c72d165003e1e096b29 (patch)
tree9c2ed01ead5d00be6eae1a93de1ca97ce84077f1
parent951061c972a58215403b86b36dbbdb9de7f3dfad (diff)
rtos/mqx: Fix uninitialized parts of symbol table
Memory for the symbol table was allocated by malloc but not initialized other than with the symbol name. Therefore `address` and `optional` members were having arbitrary values leading to every symbol being optional most of the time which messes up RTOS auto-detection. Memory will now be zero-initialized as in other RTOS implementations. Change-Id: I6c6e31ec1ef7e043061adf8c695b2139620e005d Signed-off-by: Daniel Krebs <github@daniel-krebs.net> Reviewed-on: http://openocd.zylin.com/3017 Tested-by: jenkins Reviewed-by: Freddie Chopin <freddie.chopin@gmail.com>
-rw-r--r--src/rtos/mqx.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/rtos/mqx.c b/src/rtos/mqx.c
index 0ba462c9..272658c8 100644
--- a/src/rtos/mqx.c
+++ b/src/rtos/mqx.c
@@ -544,7 +544,7 @@ static int mqx_get_thread_reg_list(
/* API function, export list of required symbols */
static int mqx_get_symbol_list_to_lookup(symbol_table_elem_t *symbol_list[])
{
- *symbol_list = malloc(sizeof(symbol_table_elem_t) * ARRAY_SIZE(mqx_symbol_list));
+ *symbol_list = calloc(ARRAY_SIZE(mqx_symbol_list), sizeof(symbol_table_elem_t));
if (NULL == *symbol_list)
return ERROR_FAIL;
/* export required symbols */