]> git.alsa-project.org Git - alsa-utils.git/commitdiff
alsabat: fix a possible memory leak
authorLu, Han <han.lu@intel.com>
Wed, 1 Jun 2016 08:54:28 +0000 (16:54 +0800)
committerTakashi Iwai <tiwai@suse.de>
Wed, 1 Jun 2016 10:33:44 +0000 (12:33 +0200)
Fix a possible memory leak in generate_sine_wave(). Memory free was
ignored when the function return an error.

Signed-off-by: Lu, Han <han.lu@intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
bat/signal.c

index a47ba970f981e04affdf127bd6fa13ce4e37d023..61d2824606e0513db27513dc0c6ed84dee891f0e 100644 (file)
@@ -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;
 }