Mesa (master): vl/video_buffer: fix height of interlaced video buffers

Christian König deathsimple at kemper.freedesktop.org
Mon Feb 6 09:47:51 UTC 2012


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

Author: Christian König <deathsimple at vodafone.de>
Date:   Mon Jan 30 17:51:53 2012 +0100

vl/video_buffer: fix height of interlaced video buffers

Signed-off-by: Christian König <deathsimple at vodafone.de>

---

 src/gallium/auxiliary/vl/vl_video_buffer.c |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/src/gallium/auxiliary/vl/vl_video_buffer.c b/src/gallium/auxiliary/vl/vl_video_buffer.c
index 021e81e..249124f 100644
--- a/src/gallium/auxiliary/vl/vl_video_buffer.c
+++ b/src/gallium/auxiliary/vl/vl_video_buffer.c
@@ -321,7 +321,7 @@ vl_video_buffer_create(struct pipe_context *pipe,
                        const struct pipe_video_buffer *tmpl)
 {
    const enum pipe_format *resource_formats;
-   struct pipe_video_buffer templat;
+   struct pipe_video_buffer templat, *result;
    bool pot_buffers;
 
    assert(pipe);
@@ -347,11 +347,17 @@ vl_video_buffer_create(struct pipe_context *pipe,
    if (tmpl->interlaced)
       templat.height /= 2;
 
-   return vl_video_buffer_create_ex
+   result = vl_video_buffer_create_ex
    (
       pipe, &templat, resource_formats,
       tmpl->interlaced ? 2 : 1, PIPE_USAGE_STATIC
    );
+
+
+   if (result && tmpl->interlaced)
+      result->height *= 2;
+
+   return result;
 }
 
 struct pipe_video_buffer *




More information about the mesa-commit mailing list