From: Kipp Cannon Date: Sun, 21 Jun 2009 07:50:54 +0000 (+0200) Subject: audioamplify: Don't declare a loop index static X-Git-Tag: RELEASE-0.10.16~423 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=f80b62c3db332992e110589e8b5dfe732ff5ed46;p=platform%2Fupstream%2Fgst-plugins-good.git audioamplify: Don't declare a loop index static The previous patch to add support for additional sample formats possibly introduced a reentrancy bug: a variable used for a loop index was declared static. This patch fixes that, and also adds a "/* *INDENT-ON* */" annotation following the macro block. (I don't know what the annotation is for, but the adder, where I copied this from, has it). --- diff --git a/gst/audiofx/audioamplify.c b/gst/audiofx/audioamplify.c index 86754da..8202d92 100644 --- a/gst/audiofx/audioamplify.c +++ b/gst/audiofx/audioamplify.c @@ -279,6 +279,7 @@ MAKE_INT_FUNCS (gint16) MAKE_INT_FUNCS (gint32) MAKE_FLOAT_FUNCS (gfloat) MAKE_FLOAT_FUNCS (gdouble) +/* *INDENT-ON* */ /* GObject vmethod implementations */ @@ -343,54 +344,56 @@ gst_audio_amplify_init (GstAudioAmplify * filter, GstAudioAmplifyClass * klass) static GstAudioAmplifyProcessFunc gst_audio_amplify_process_function (gint clipping, gint format, gint width) { - static const struct { + static const struct process + { gint format; gint width; gint clipping; GstAudioAmplifyProcessFunc func; - } *p, process[] = { - {GST_BUFTYPE_FLOAT, 32, METHOD_CLIP, - gst_audio_amplify_transform_gfloat_clip}, - {GST_BUFTYPE_FLOAT, 32, METHOD_WRAP_NEGATIVE, - gst_audio_amplify_transform_gfloat_wrap_negative}, - {GST_BUFTYPE_FLOAT, 32, METHOD_WRAP_POSITIVE, - gst_audio_amplify_transform_gfloat_wrap_positive}, - {GST_BUFTYPE_FLOAT, 32, METHOD_NOCLIP, - gst_audio_amplify_transform_gfloat_noclip}, - {GST_BUFTYPE_FLOAT, 64, METHOD_CLIP, - gst_audio_amplify_transform_gdouble_clip}, - {GST_BUFTYPE_FLOAT, 64, METHOD_WRAP_NEGATIVE, - gst_audio_amplify_transform_gdouble_wrap_negative}, - {GST_BUFTYPE_FLOAT, 64, METHOD_WRAP_POSITIVE, - gst_audio_amplify_transform_gdouble_wrap_positive}, - {GST_BUFTYPE_FLOAT, 64, METHOD_NOCLIP, - gst_audio_amplify_transform_gdouble_noclip}, - {GST_BUFTYPE_LINEAR, 8, METHOD_CLIP, - gst_audio_amplify_transform_gint8_clip}, - {GST_BUFTYPE_LINEAR, 8, METHOD_WRAP_NEGATIVE, - gst_audio_amplify_transform_gint8_wrap_negative}, - {GST_BUFTYPE_LINEAR, 8, METHOD_WRAP_POSITIVE, - gst_audio_amplify_transform_gint8_wrap_positive}, - {GST_BUFTYPE_LINEAR, 8, METHOD_NOCLIP, - gst_audio_amplify_transform_gint8_noclip}, - {GST_BUFTYPE_LINEAR, 16, METHOD_CLIP, - gst_audio_amplify_transform_gint16_clip}, - {GST_BUFTYPE_LINEAR, 16, METHOD_WRAP_NEGATIVE, - gst_audio_amplify_transform_gint16_wrap_negative}, - {GST_BUFTYPE_LINEAR, 16, METHOD_WRAP_POSITIVE, - gst_audio_amplify_transform_gint16_wrap_positive}, - {GST_BUFTYPE_LINEAR, 16, METHOD_NOCLIP, - gst_audio_amplify_transform_gint16_noclip}, - {GST_BUFTYPE_LINEAR, 32, METHOD_CLIP, - gst_audio_amplify_transform_gint32_clip}, - {GST_BUFTYPE_LINEAR, 32, METHOD_WRAP_NEGATIVE, - gst_audio_amplify_transform_gint32_wrap_negative}, - {GST_BUFTYPE_LINEAR, 32, METHOD_WRAP_POSITIVE, - gst_audio_amplify_transform_gint32_wrap_positive}, - {GST_BUFTYPE_LINEAR, 32, METHOD_NOCLIP, - gst_audio_amplify_transform_gint32_noclip}, - {0, 0, 0, NULL} + } process[] = { + { + GST_BUFTYPE_FLOAT, 32, METHOD_CLIP, + gst_audio_amplify_transform_gfloat_clip}, { + GST_BUFTYPE_FLOAT, 32, METHOD_WRAP_NEGATIVE, + gst_audio_amplify_transform_gfloat_wrap_negative}, { + GST_BUFTYPE_FLOAT, 32, METHOD_WRAP_POSITIVE, + gst_audio_amplify_transform_gfloat_wrap_positive}, { + GST_BUFTYPE_FLOAT, 32, METHOD_NOCLIP, + gst_audio_amplify_transform_gfloat_noclip}, { + GST_BUFTYPE_FLOAT, 64, METHOD_CLIP, + gst_audio_amplify_transform_gdouble_clip}, { + GST_BUFTYPE_FLOAT, 64, METHOD_WRAP_NEGATIVE, + gst_audio_amplify_transform_gdouble_wrap_negative}, { + GST_BUFTYPE_FLOAT, 64, METHOD_WRAP_POSITIVE, + gst_audio_amplify_transform_gdouble_wrap_positive}, { + GST_BUFTYPE_FLOAT, 64, METHOD_NOCLIP, + gst_audio_amplify_transform_gdouble_noclip}, { + GST_BUFTYPE_LINEAR, 8, METHOD_CLIP, gst_audio_amplify_transform_gint8_clip}, { + GST_BUFTYPE_LINEAR, 8, METHOD_WRAP_NEGATIVE, + gst_audio_amplify_transform_gint8_wrap_negative}, { + GST_BUFTYPE_LINEAR, 8, METHOD_WRAP_POSITIVE, + gst_audio_amplify_transform_gint8_wrap_positive}, { + GST_BUFTYPE_LINEAR, 8, METHOD_NOCLIP, + gst_audio_amplify_transform_gint8_noclip}, { + GST_BUFTYPE_LINEAR, 16, METHOD_CLIP, + gst_audio_amplify_transform_gint16_clip}, { + GST_BUFTYPE_LINEAR, 16, METHOD_WRAP_NEGATIVE, + gst_audio_amplify_transform_gint16_wrap_negative}, { + GST_BUFTYPE_LINEAR, 16, METHOD_WRAP_POSITIVE, + gst_audio_amplify_transform_gint16_wrap_positive}, { + GST_BUFTYPE_LINEAR, 16, METHOD_NOCLIP, + gst_audio_amplify_transform_gint16_noclip}, { + GST_BUFTYPE_LINEAR, 32, METHOD_CLIP, + gst_audio_amplify_transform_gint32_clip}, { + GST_BUFTYPE_LINEAR, 32, METHOD_WRAP_NEGATIVE, + gst_audio_amplify_transform_gint32_wrap_negative}, { + GST_BUFTYPE_LINEAR, 32, METHOD_WRAP_POSITIVE, + gst_audio_amplify_transform_gint32_wrap_positive}, { + GST_BUFTYPE_LINEAR, 32, METHOD_NOCLIP, + gst_audio_amplify_transform_gint32_noclip}, { + 0, 0, 0, NULL} }; + const struct process *p; for (p = process; p->func; p++) if (p->format == format && p->width == width && p->clipping == clipping) @@ -406,8 +409,7 @@ gst_audio_amplify_set_process_function (GstAudioAmplify * filter, gint /* set processing function */ - process = gst_audio_amplify_process_function (clipping_method, format, - width); + process = gst_audio_amplify_process_function (clipping_method, format, width); if (!process) { GST_DEBUG ("wrong format"); return FALSE;