mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-11-27 20:21:24 +00:00
audiodynamic: assert func_index is inside bounds
Bringing back the check removed in the previous commit but have that check be a g_assert. Changing the function to static void since return can never be False, because audio format will never be unkown.
This commit is contained in:
parent
1db92a91de
commit
42535107ca
1 changed files with 5 additions and 6 deletions
|
@ -180,21 +180,19 @@ gst_audio_dynamic_mode_get_type (void)
|
||||||
return gtype;
|
return gtype;
|
||||||
}
|
}
|
||||||
|
|
||||||
static gboolean
|
static void
|
||||||
gst_audio_dynamic_set_process_function (GstAudioDynamic * filter,
|
gst_audio_dynamic_set_process_function (GstAudioDynamic * filter,
|
||||||
const GstAudioInfo * info)
|
const GstAudioInfo * info)
|
||||||
{
|
{
|
||||||
gint func_index;
|
gint func_index;
|
||||||
|
|
||||||
if (GST_AUDIO_INFO_FORMAT (info) == GST_AUDIO_FORMAT_UNKNOWN)
|
|
||||||
return FALSE;
|
|
||||||
|
|
||||||
func_index = (filter->mode == MODE_COMPRESSOR) ? 0 : 4;
|
func_index = (filter->mode == MODE_COMPRESSOR) ? 0 : 4;
|
||||||
func_index += (filter->characteristics == CHARACTERISTICS_HARD_KNEE) ? 0 : 2;
|
func_index += (filter->characteristics == CHARACTERISTICS_HARD_KNEE) ? 0 : 2;
|
||||||
func_index += (GST_AUDIO_INFO_FORMAT (info) == GST_AUDIO_FORMAT_F32) ? 1 : 0;
|
func_index += (GST_AUDIO_INFO_FORMAT (info) == GST_AUDIO_FORMAT_F32) ? 1 : 0;
|
||||||
|
|
||||||
|
g_assert (func_index >= 0 && func_index < G_N_ELEMENTS (process_functions));
|
||||||
|
|
||||||
filter->process = process_functions[func_index];
|
filter->process = process_functions[func_index];
|
||||||
return TRUE;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* GObject vmethod implementations */
|
/* GObject vmethod implementations */
|
||||||
|
@ -330,7 +328,8 @@ gst_audio_dynamic_setup (GstAudioFilter * base, const GstAudioInfo * info)
|
||||||
{
|
{
|
||||||
GstAudioDynamic *filter = GST_AUDIO_DYNAMIC (base);
|
GstAudioDynamic *filter = GST_AUDIO_DYNAMIC (base);
|
||||||
|
|
||||||
return gst_audio_dynamic_set_process_function (filter, info);
|
gst_audio_dynamic_set_process_function (filter, info);
|
||||||
|
return TRUE;
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
Loading…
Reference in a new issue