diff options
Diffstat (limited to 'gst/flacparse')
-rw-r--r-- | gst/flacparse/gstbaseparse.c | 14 |
1 files changed, 5 insertions, 9 deletions
diff --git a/gst/flacparse/gstbaseparse.c b/gst/flacparse/gstbaseparse.c index 9b4a9f13..5f35d917 100644 --- a/gst/flacparse/gstbaseparse.c +++ b/gst/flacparse/gstbaseparse.c @@ -982,20 +982,16 @@ gst_base_parse_chain (GstPad * pad, GstBuffer * buffer) /* Make sure that adapter doesn't have any old data after newsegment has been received and update our offset */ - if (parse->pending_segment) { - gst_adapter_clear (parse->priv->adapter); + if (G_UNLIKELY (parse->pending_segment)) { parse->priv->offset = parse->priv->pending_offset; + gst_adapter_clear (parse->priv->adapter); } gst_base_parse_update_upstream_durations (parse); - if (buffer) { - GST_LOG_OBJECT (parse, "buffer size: %d, offset = %lld", - GST_BUFFER_SIZE (buffer), GST_BUFFER_OFFSET (buffer)); - - - gst_adapter_push (parse->priv->adapter, buffer); - } + GST_LOG_OBJECT (parse, "buffer size: %d, offset = %lld", + GST_BUFFER_SIZE (buffer), GST_BUFFER_OFFSET (buffer)); + gst_adapter_push (parse->priv->adapter, buffer); /* Parse and push as many frames as possible */ /* Stop either when adapter is empty or we are flushing */ |