mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-20 07:16:55 +00:00
gstspu: Fix a nasty regression, with DVDs randomly crashing
Use the local wrapper function when clearing the compositing buffers to ensure the correct portion is being cleared.
This commit is contained in:
parent
8f70498c89
commit
35a66554b4
1 changed files with 3 additions and 3 deletions
|
@ -343,7 +343,7 @@ gstspu_vobsub_blend_comp_buffers (SpuState * state, guint8 * planes[3])
|
||||||
gstspu_blend_comp_buffers (state, planes);
|
gstspu_blend_comp_buffers (state, planes);
|
||||||
}
|
}
|
||||||
|
|
||||||
void
|
static void
|
||||||
gstspu_vobsub_clear_comp_buffers (SpuState * state)
|
gstspu_vobsub_clear_comp_buffers (SpuState * state)
|
||||||
{
|
{
|
||||||
state->comp_left = state->vobsub.disp_rect.left;
|
state->comp_left = state->vobsub.disp_rect.left;
|
||||||
|
@ -452,7 +452,7 @@ gstspu_vobsub_render (GstDVDSpu * dvdspu, GstBuffer * buf)
|
||||||
|| state->vobsub.cur_Y > state->vobsub.clip_rect.bottom);
|
|| state->vobsub.cur_Y > state->vobsub.clip_rect.bottom);
|
||||||
|
|
||||||
/* Reset the compositing buffer */
|
/* Reset the compositing buffer */
|
||||||
gstspu_clear_comp_buffers (state);
|
gstspu_vobsub_clear_comp_buffers (state);
|
||||||
/* Render even line */
|
/* Render even line */
|
||||||
state->vobsub.comp_last_x_ptr = state->vobsub.comp_last_x;
|
state->vobsub.comp_last_x_ptr = state->vobsub.comp_last_x;
|
||||||
gstspu_vobsub_render_line (state, planes, &state->vobsub.cur_offsets[0]);
|
gstspu_vobsub_render_line (state, planes, &state->vobsub.cur_offsets[0]);
|
||||||
|
@ -480,7 +480,7 @@ gstspu_vobsub_render (GstDVDSpu * dvdspu, GstBuffer * buf)
|
||||||
|
|
||||||
/* Render a remaining lone last even line. y already has the correct value
|
/* Render a remaining lone last even line. y already has the correct value
|
||||||
* after the above loop exited. */
|
* after the above loop exited. */
|
||||||
gstspu_clear_comp_buffers (state);
|
gstspu_vobsub_clear_comp_buffers (state);
|
||||||
state->vobsub.comp_last_x_ptr = state->vobsub.comp_last_x;
|
state->vobsub.comp_last_x_ptr = state->vobsub.comp_last_x;
|
||||||
gstspu_vobsub_render_line (state, planes, &state->vobsub.cur_offsets[0]);
|
gstspu_vobsub_render_line (state, planes, &state->vobsub.cur_offsets[0]);
|
||||||
gstspu_vobsub_blend_comp_buffers (state, planes);
|
gstspu_vobsub_blend_comp_buffers (state, planes);
|
||||||
|
|
Loading…
Reference in a new issue