summaryrefslogtreecommitdiff
path: root/array.c
diff options
context:
space:
mode:
Diffstat (limited to 'array.c')
-rw-r--r--array.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/array.c b/array.c
index 3f80d0d..90af331 100644
--- a/array.c
+++ b/array.c
@@ -55,8 +55,10 @@ get_array (const void *data, const int *magic)
}
static void
-array_free (array_t *array)
+array_free (void *data, const int *magic)
{
+ array_t *array = get_array (data, magic);
+
g_free (array);
}
@@ -175,6 +177,8 @@ array_append (void *data,
return data;
}
+/***************************** individual array implementations ****************************/
+
/* Generic arrays
*
* The idiomatic way to use them is like this:
@@ -205,7 +209,7 @@ nul_array_append (nul_ptr_t arr, nul_ptr_t element)
void
nul_array_free (nul_ptr_t array)
{
- array_free (get_array (array, &arr_t_magic));
+ array_free (array, &arr_t_magic);
}
gsize
@@ -262,7 +266,7 @@ nul_ptr_array_append (void **arr, gpointer data)
void
nul_ptr_array_free (void **arr)
{
- array_free (get_array (arr, &parr_t_magic));
+ array_free (arr, &parr_t_magic);
}
gsize
@@ -285,7 +289,7 @@ nul_string_new (void)
void
nul_string_free (nul_string_t *str)
{
- array_free (get_array (str, &string_t_magic));
+ array_free (str, &string_t_magic);
}
gsize