Module: Mesa
Branch: master
Commit: 462647453ca2c245a51483f38f5fe21ea5126f80
URL:    
http://cgit.freedesktop.org/mesa/mesa/commit/?id=462647453ca2c245a51483f38f5fe21ea5126f80

Author: Christian König <[email protected]>
Date:   Tue Apr  9 18:36:22 2013 +0200

st/vdpau: fix subtitle related bug v2

Drawing subtitles didn't increased the dirty area of the surface.

Reported and tested by freeedrich on irc.

v2: don't clear the surface

Signed-off-by: Christian König <[email protected]>

---

 src/gallium/state_trackers/vdpau/output.c |    4 ++++
 1 files changed, 4 insertions(+), 0 deletions(-)

diff --git a/src/gallium/state_trackers/vdpau/output.c 
b/src/gallium/state_trackers/vdpau/output.c
index 8237eac..df0f458 100644
--- a/src/gallium/state_trackers/vdpau/output.c
+++ b/src/gallium/state_trackers/vdpau/output.c
@@ -383,6 +383,7 @@ vlVdpOutputSurfacePutBitsIndexed(VdpOutputSurface surface,
    vl_compositor_set_palette_layer(cstate, compositor, 0, sv_idx, sv_tbl, 
NULL, NULL, false);
    vl_compositor_set_layer_dst_area(cstate, 0, RectToPipe(destination_rect, 
&dst_rect));
    vl_compositor_render(cstate, compositor, vlsurface->surface, NULL);
+   vl_compositor_reset_dirty_area(&vlsurface->dirty_area);
 
    pipe_sampler_view_reference(&sv_idx, NULL);
    pipe_sampler_view_reference(&sv_tbl, NULL);
@@ -489,6 +490,7 @@ vlVdpOutputSurfacePutBitsYCbCr(VdpOutputSurface surface,
    vl_compositor_set_buffer_layer(cstate, compositor, 0, vbuffer, NULL, NULL, 
VL_COMPOSITOR_WEAVE);
    vl_compositor_set_layer_dst_area(cstate, 0, RectToPipe(destination_rect, 
&dst_rect));
    vl_compositor_render(cstate, compositor, vlsurface->surface, NULL);
+   vl_compositor_reset_dirty_area(&vlsurface->dirty_area);
 
    vbuffer->destroy(vbuffer);
    pipe_mutex_unlock(vlsurface->device->mutex);
@@ -659,6 +661,7 @@ vlVdpOutputSurfaceRenderOutputSurface(VdpOutputSurface 
destination_surface,
                                 ColorsToPipe(colors, flags, vlcolors));
    vl_compositor_set_layer_dst_area(cstate, 0, RectToPipe(destination_rect, 
&dst_rect));
    vl_compositor_render(cstate, compositor, dst_vlsurface->surface, NULL);
+   vl_compositor_reset_dirty_area(&dst_vlsurface->dirty_area);
 
    context->delete_blend_state(context, blend);
    pipe_mutex_unlock(dst_vlsurface->device->mutex);
@@ -718,6 +721,7 @@ vlVdpOutputSurfaceRenderBitmapSurface(VdpOutputSurface 
destination_surface,
                                 ColorsToPipe(colors, flags, vlcolors));
    vl_compositor_set_layer_dst_area(cstate, 0, RectToPipe(destination_rect, 
&dst_rect));
    vl_compositor_render(cstate, compositor, dst_vlsurface->surface, NULL);
+   vl_compositor_reset_dirty_area(&dst_vlsurface->dirty_area);
 
    context->delete_blend_state(context, blend);
    pipe_mutex_unlock(dst_vlsurface->device->mutex);

_______________________________________________
mesa-commit mailing list
[email protected]
http://lists.freedesktop.org/mailman/listinfo/mesa-commit

Reply via email to