From c3d05d6006ed78d0d470ab7bbe9436fd43c60d5e Mon Sep 17 00:00:00 2001 From: Vincent Penquerc'h Date: Tue, 11 Jan 2011 15:52:03 +0000 Subject: [PATCH] dvdspu: don't write clipped lines to the output buffer We may not increment the output pointer, but it'll still be just off the end of the allocated area. https://bugzilla.gnome.org/show_bug.cgi?id=602847 --- gst/dvdspu/gstspu-vobsub-render.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/gst/dvdspu/gstspu-vobsub-render.c b/gst/dvdspu/gstspu-vobsub-render.c index 30de0eb801..06054085d1 100644 --- a/gst/dvdspu/gstspu-vobsub-render.c +++ b/gst/dvdspu/gstspu-vobsub-render.c @@ -515,10 +515,11 @@ gstspu_vobsub_render (GstDVDSpu * dvdspu, GstBuffer * buf) /* Render odd line */ state->vobsub.comp_last_x_ptr = state->vobsub.comp_last_x + 1; gstspu_vobsub_render_line (state, planes, &state->vobsub.cur_offsets[1]); - /* Blend the accumulated UV compositing buffers onto the output */ - gstspu_vobsub_blend_comp_buffers (state, planes); if (!clip) { + /* Blend the accumulated UV compositing buffers onto the output */ + gstspu_vobsub_blend_comp_buffers (state, planes); + /* Update all the output pointers */ planes[0] += state->Y_stride; planes[1] += state->UV_stride;