diff --git a/ChangeLog b/ChangeLog index 323942b4ca..95ff2ad29f 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +2007-12-17 Edward Hervey + + * ext/jpeg/gstjpegdec.c: (gst_jpeg_dec_chain): + Actually drop the buffers which are outside the currently configured + segment instead of just emitting a WARNING. + 2007-12-14 Wim Taymans * ext/flac/gstflacdec.c: (gst_flac_dec_metadata_callback), diff --git a/common b/common index ea5f2cfab1..a00d4c1966 160000 --- a/common +++ b/common @@ -1 +1 @@ -Subproject commit ea5f2cfab1a164a5d285fe745343cbe0a476a904 +Subproject commit a00d4c1966aab517c2694c61d580489ebcbce448 diff --git a/ext/jpeg/gstjpegdec.c b/ext/jpeg/gstjpegdec.c index 950dc784bc..71e505dc8c 100644 --- a/ext/jpeg/gstjpegdec.c +++ b/ext/jpeg/gstjpegdec.c @@ -993,9 +993,8 @@ gst_jpeg_dec_chain (GstPad * pad, GstBuffer * buf) GST_TIME_ARGS (clip_stop - clip_start)); GST_BUFFER_DURATION (outbuf) = clip_stop - clip_start; } - } else { - GST_WARNING_OBJECT (dec, "Outgoing buffer is outside configured segment"); - } + } else + goto drop_buffer; } GST_LOG_OBJECT (dec, "pushing buffer (ts=%" GST_TIME_FORMAT ", dur=%" @@ -1061,6 +1060,13 @@ alloc_failed: } goto exit; } +drop_buffer: + { + GST_WARNING_OBJECT (dec, "Outgoing buffer is outside configured segment"); + gst_buffer_unref (outbuf); + ret = GST_FLOW_OK; + goto exit; + } } static gboolean