diff --git a/src/ao_null.c b/src/ao_null.c index caed4a3fd61899768c87fe8996fcd3a5b7716930..62d6d2cadf106d8af1b983a32bbf2fd405759f4f 100644 --- a/src/ao_null.c +++ b/src/ao_null.c @@ -73,7 +73,7 @@ static ao_info_t *ao_null_get_driver_info(void) return &ao_null_info; } -static int ao_null_get_latency(void) +static int ao_null_get_latency(ao_internal_t *state) { return 0; } diff --git a/src/ao_wav.c b/src/ao_wav.c index fe0c022363ddd35c1202dfa4108f5ea41d5aa541..b4172f6fc015c59f156f6654c6e43c89720c8e12 100644 --- a/src/ao_wav.c +++ b/src/ao_wav.c @@ -300,7 +300,7 @@ ERR: free(s); } -static int ao_wav_get_latency(void) +static int ao_wav_get_latency(ao_internal_t *state) { return 0; } diff --git a/src/audio_out.c b/src/audio_out.c index b8922960c704cd452e00f42743374064551ca3f3..65597496d18aa623dd48f597abd1c8ae35b719be 100644 --- a/src/audio_out.c +++ b/src/audio_out.c @@ -161,8 +161,11 @@ void ao_shutdown(void) } /* free the standard drivers */ - if (driver_head->next) free(driver_head->next); - if (driver_head->next) free(driver_head); + if (driver_head) { + if(driver_head->next) + free(driver_head->next); + free(driver_head); + } /* NULL out driver_head or ao_initialize won't work */ driver_head = NULL; diff --git a/src/plugins/arts/ao_arts.c b/src/plugins/arts/ao_arts.c index ff4b88c5521db444f12b57e3ddf962264a46e663..a96a4f4e35a899b84cfe26d44f22e914096d2f64 100644 --- a/src/plugins/arts/ao_arts.c +++ b/src/plugins/arts/ao_arts.c @@ -89,6 +89,7 @@ plugin_close(ao_internal_t * state) { arts_close_stream(((ao_arts_internal_t *)state)->stream); arts_free(); + free(state); } void