imxtools: add const and set pointer to NULL on free to avoid double free
git-svn-id: svn://svn.rockbox.org/rockbox/trunk@30918 a1c6a512-1295-4272-9138-f99709370657
diff --git a/utils/imxtools/misc.c b/utils/imxtools/misc.c
index 8d7cea8..7271ca8 100644
--- a/utils/imxtools/misc.c
+++ b/utils/imxtools/misc.c
@@ -30,7 +30,7 @@
* Misc
*/
-void *memdup(void *p, size_t len)
+void *memdup(const void *p, size_t len)
{
void *cpy = xmalloc(len);
memcpy(cpy, p, len);
@@ -156,6 +156,7 @@
{
free(g_key_array);
g_nr_keys = 0;
+ g_key_array = NULL;
}
void add_keys_from_file(const char *key_file)
diff --git a/utils/imxtools/misc.h b/utils/imxtools/misc.h
index b0b7dfe..7ff9ce5 100644
--- a/utils/imxtools/misc.h
+++ b/utils/imxtools/misc.h
@@ -38,7 +38,7 @@
int g_nr_keys;
key_array_t g_key_array;
-void *memdup(void *p, size_t len);
+void *memdup(const void *p, size_t len);
void *augment_array(void *arr, size_t elem_sz, size_t cnt, void *aug, size_t aug_cnt);
void generate_random_data(void *buf, size_t sz);
void *xmalloc(size_t s);