diff options
author | David Sansome <me@davidsansome.com> | 2014-10-11 11:18:42 +1100 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.com> | 2014-10-24 20:45:29 +0100 |
commit | c56ae189f10a79e4672feedf30e53ca17199c683 (patch) | |
tree | 22e1c6d54bb37ab1037e6e5de51a65dea2ae073b | |
parent | e0575c791d8788c9565a47a13d8117d3380d2995 (diff) |
equalizer: Don't call iirequalizer's transform_ip in passthrough mode
It tries to map the read-only buffer with GST_MAP_READWRITE and crashes.
https://bugzilla.gnome.org/show_bug.cgi?id=737886
-rw-r--r-- | gst/equalizer/gstiirequalizer.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/gst/equalizer/gstiirequalizer.c b/gst/equalizer/gstiirequalizer.c index d278c4c03..e912ca52f 100644 --- a/gst/equalizer/gstiirequalizer.c +++ b/gst/equalizer/gstiirequalizer.c @@ -362,6 +362,7 @@ gst_iir_equalizer_class_init (GstIirEqualizerClass * klass) gobject_class->finalize = gst_iir_equalizer_finalize; audio_filter_class->setup = gst_iir_equalizer_setup; btrans_class->transform_ip = gst_iir_equalizer_transform_ip; + btrans_class->transform_ip_on_passthrough = FALSE; caps = gst_caps_from_string (ALLOWED_CAPS); gst_audio_filter_class_add_pad_templates (audio_filter_class, caps); @@ -831,9 +832,6 @@ gst_iir_equalizer_transform_ip (GstBaseTransform * btrans, GstBuffer * buf) need_new_coefficients = equ->need_new_coefficients; BANDS_UNLOCK (equ); - if (!need_new_coefficients && gst_base_transform_is_passthrough (btrans)) - return GST_FLOW_OK; - timestamp = GST_BUFFER_TIMESTAMP (buf); timestamp = gst_segment_to_stream_time (&btrans->segment, GST_FORMAT_TIME, timestamp); |