qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH 07/11] audio/audio_template: use g_malloc0() to replace audio


From: Volker Rümelin
Subject: Re: [PATCH 07/11] audio/audio_template: use g_malloc0() to replace audio_calloc()
Date: Tue, 17 Jan 2023 08:05:39 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:102.0) Gecko/20100101 Thunderbird/102.6.1

Am 16.01.23 um 09:58 schrieb Daniel P. Berrangé:
On Sun, Dec 18, 2022 at 06:39:00PM +0100, Volker Rümelin wrote:
Am 18.12.22 um 18:26 schrieb Philippe Mathieu-Daudé:
On 18/12/22 18:15, Volker Rümelin wrote:
Use g_malloc0() as a direct replacement for audio_calloc().

Signed-off-by: Volker Rümelin <vr_qemu@t-online.de>
---
   audio/audio_template.h | 2 +-
   1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/audio/audio_template.h b/audio/audio_template.h
index d343a1dcb3..5f51ef26b2 100644
--- a/audio/audio_template.h
+++ b/audio/audio_template.h
@@ -273,7 +273,7 @@ static HW *glue(audio_pcm_hw_add_new_,
TYPE)(AudioState *s,
           return NULL;
       }
   -    hw = audio_calloc(__func__, 1, glue(drv->voice_size_, TYPE));
+    hw = g_malloc0(glue(drv->voice_size_, TYPE));
       if (!hw) {
g_malloc0() can't fail. Either you want g_try_malloc0() or
remove the error path.

g_malloc0() returns NULL if drv->voice_size_(out|in) is 0. I think the code
is correct.
IMHO relying on that is rather misleading to people reviewing the code
though. As seen by Philippe's reply, people generally don't expect that
g_malloc0 can return NULL, and it is not at all obvious that we are
intentionally expecting 0 to be passed as a size.

Please make this explicit by removing and if (!hw) check after
g_malloc, and adding a check before g_malloc

    if (audio_bug(__func__, glue(drv->voice_size_, TYPE) == 0)) {
        dolog (...)

I'll change it.

With best regards,
Volker


With regards,
Daniel




reply via email to

[Prev in Thread] Current Thread [Next in Thread]