summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--gst/rtpdtmf/gstrtpdtmfsrc.c12
1 files changed, 8 insertions, 4 deletions
diff --git a/gst/rtpdtmf/gstrtpdtmfsrc.c b/gst/rtpdtmf/gstrtpdtmfsrc.c
index d535271f..464b34d5 100644
--- a/gst/rtpdtmf/gstrtpdtmfsrc.c
+++ b/gst/rtpdtmf/gstrtpdtmfsrc.c
@@ -272,11 +272,14 @@ gst_rtp_dtmf_src_handle_event (GstPad * pad, GstEvent * event)
}
}
+ result = TRUE;
break;
}
- case GST_EVENT_FLUSH_STOP:
- result = gst_pad_event_default (pad, event);
- gst_segment_init (&dtmfsrc->segment, GST_FORMAT_UNDEFINED);
+ /* Ideally this element should not be flushed but let's handle the event
+ * just in case it is */
+ case GST_EVENT_FLUSH_START:
+ gst_rtp_dtmf_src_stop (dtmfsrc);
+ result = TRUE;
break;
case GST_EVENT_NEWSEGMENT:
{
@@ -289,7 +292,8 @@ gst_rtp_dtmf_src_handle_event (GstPad * pad, GstEvent * event)
&position);
gst_segment_set_newsegment (&dtmfsrc->segment, update, rate, fmt,
start, stop, position);
-
+
+ result = TRUE;
break;
}
default: