From: Lu, Han Date: Wed, 1 Jun 2016 08:54:28 +0000 (+0800) Subject: alsabat: fix a possible memory leak X-Git-Tag: v1.1.2~8 X-Git-Url: https://git.alsa-project.org/?a=commitdiff_plain;h=2b3adf8668ab4e0e57168725f2562006bb5472ef;p=alsa-utils.git alsabat: fix a possible memory leak Fix a possible memory leak in generate_sine_wave(). Memory free was ignored when the function return an error. Signed-off-by: Lu, Han Signed-off-by: Takashi Iwai --- diff --git a/bat/signal.c b/bat/signal.c index a47ba97..61d2824 100644 --- a/bat/signal.c +++ b/bat/signal.c @@ -168,16 +168,17 @@ int generate_sine_wave(struct bat *bat, int frames, void *buf) /* reorder samples to interleaved mode */ err = reorder(bat, sinus_f, frames); if (err != 0) - return err; + goto exit; /* adjust amplitude and offset of waveform */ err = adjust_waveform(bat, sinus_f, frames); if (err != 0) - return err; + goto exit; bat->convert_float_to_sample(sinus_f, buf, frames, bat->channels); +exit: free(sinus_f); - return 0; + return err; }