diff options
Diffstat (limited to 'src/sink.c')
-rw-r--r-- | src/sink.c | 11 |
1 files changed, 6 insertions, 5 deletions
@@ -11,27 +11,28 @@ /* * init a sink list */ -GArray *sink_list_alloc(void) { +GArray *sink_list_alloc(void) +{ return g_array_sized_new(false, false, sizeof(sink_info), 16); } /* * frees all dynamic allocated components of a sink */ -static void sink_clear(sink_info* sink) { +static void sink_clear(sink_info* sink) +{ if (sink->name != NULL) free(sink->name); - if (sink->device != NULL) free(sink->device); - sink_input_list_free(sink->input_list); } /* * frees a complete sink array */ -void sink_list_free(GArray *sink_list) { +void sink_list_free(GArray *sink_list) +{ for (int i = 0; i < sink_list->len; ++i) sink_clear(&g_array_index(sink_list, sink_info, i)); g_array_free(sink_list, true); |