From c6b69a814a2dd9f8da08d55f36ed73597ee0c612 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Volker=20R=C3=BCmelin?= Date: Sat, 21 Jan 2023 10:47:32 +0100 Subject: audio/audio_template: use g_new0() to replace audio_calloc() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Replace audio_calloc() with the equivalent g_new0(). With a n_structs argument >= 1, g_new0() never returns NULL. Also remove the unnecessary NULL checks. Signed-off-by: Volker Rümelin Reviewed-by: Daniel P. Berrangé Reviewed-by: Marc-André Lureau Message-Id: <20230121094735.11644-8-vr_qemu@t-online.de> --- audio/audio_template.h | 29 ++++++++++++----------------- 1 file changed, 12 insertions(+), 17 deletions(-) (limited to 'audio/audio_template.h') diff --git a/audio/audio_template.h b/audio/audio_template.h index 592866f14a..980e1f4bd0 100644 --- a/audio/audio_template.h +++ b/audio/audio_template.h @@ -115,6 +115,12 @@ static int glue (audio_pcm_sw_alloc_resources_, TYPE) (SW *sw) #else samples = (int64_t)sw->HWBUF->size * sw->ratio >> 32; #endif + if (audio_bug(__func__, samples < 0)) { + dolog("Can not allocate buffer for `%s' (%d samples)\n", + SW_NAME(sw), samples); + return -1; + } + if (samples == 0) { HW *hw = sw->hw; size_t f_fe_min; @@ -129,12 +135,7 @@ static int glue (audio_pcm_sw_alloc_resources_, TYPE) (SW *sw) return -1; } - sw->buf = audio_calloc(__func__, samples, sizeof(struct st_sample)); - if (!sw->buf) { - dolog ("Could not allocate buffer for `%s' (%d samples)\n", - SW_NAME (sw), samples); - return -1; - } + sw->buf = g_new0(st_sample, samples); #ifdef DAC sw->rate = st_rate_start (sw->info.freq, sw->hw->info.freq); @@ -425,34 +426,28 @@ static SW *glue(audio_pcm_create_voice_pair_, TYPE)( hw_as = *as; } - sw = audio_calloc(__func__, 1, sizeof(*sw)); - if (!sw) { - dolog ("Could not allocate soft voice `%s' (%zu bytes)\n", - sw_name ? sw_name : "unknown", sizeof (*sw)); - goto err1; - } + sw = g_new0(SW, 1); sw->s = s; hw = glue(audio_pcm_hw_add_, TYPE)(s, &hw_as); if (!hw) { dolog("Could not create a backend for voice `%s'\n", sw_name); - goto err2; + goto err1; } glue (audio_pcm_hw_add_sw_, TYPE) (hw, sw); if (glue (audio_pcm_sw_init_, TYPE) (sw, hw, sw_name, as)) { - goto err3; + goto err2; } return sw; -err3: +err2: glue (audio_pcm_hw_del_sw_, TYPE) (sw); glue (audio_pcm_hw_gc_, TYPE) (&hw); -err2: - g_free (sw); err1: + g_free(sw); return NULL; } -- cgit v1.2.3