summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGwenole Beauchesne <gwenole.beauchesne@intel.com>2011-12-04 09:29:35 +0100
committerGwenole Beauchesne <gb.devel@gmail.com>2011-12-04 09:30:16 +0100
commit5a3fc5f7d27eae6c433b6331d5eed76b0cf30f0c (patch)
treea348b66f4ffd2c1dbe6d7fc3f759600e3e88c3ff
parent29302b53a390b4c1757c611fdc8f7437f63bef84 (diff)
Fix compatibility glue for vaBufferInfo().
-rw-r--r--NEWS1
-rw-r--r--src/vdpau_buffer.c14
-rw-r--r--src/vdpau_buffer.h11
-rw-r--r--src/vdpau_driver_template.h4
4 files changed, 28 insertions, 2 deletions
diff --git a/NEWS b/NEWS
index b4e56ff..f990113 100644
--- a/NEWS
+++ b/NEWS
@@ -4,6 +4,7 @@ Copyright (C) 2009-2011 Splitted-Desktop Systems
Version 0.7.4 - DD.MM.2011
* Use upstream libva version
* Avoid X11 socket leak (Marco De Michele)
+* Fix compatibility glue for vaBufferInfo()
Version 0.7.3 - 26.Feb.2011
* Add compatibility glue with libva >= 1.0.8
diff --git a/src/vdpau_buffer.c b/src/vdpau_buffer.c
index 2f3ca75..f1171f3 100644
--- a/src/vdpau_buffer.c
+++ b/src/vdpau_buffer.c
@@ -232,7 +232,7 @@ vdpau_UnmapBuffer(
// vaBufferInfo
VAStatus
-vdpau_BufferInfo(
+vdpau_BufferInfo_0_31_1(
VADriverContextP ctx,
VAContextID context,
VABufferID buf_id,
@@ -241,6 +241,18 @@ vdpau_BufferInfo(
unsigned int *num_elements
)
{
+ return vdpau_BufferInfo(ctx, buf_id, type, size, num_elements);
+}
+
+VAStatus
+vdpau_BufferInfo(
+ VADriverContextP ctx,
+ VABufferID buf_id,
+ VABufferType *type,
+ unsigned int *size,
+ unsigned int *num_elements
+)
+{
VDPAU_DRIVER_DATA_INIT;
object_buffer_p obj_buffer = VDPAU_BUFFER(buf_id);
diff --git a/src/vdpau_buffer.h b/src/vdpau_buffer.h
index b3981ac..7790f54 100644
--- a/src/vdpau_buffer.h
+++ b/src/vdpau_buffer.h
@@ -103,7 +103,7 @@ vdpau_UnmapBuffer(
// vaBufferInfo
VAStatus
-vdpau_BufferInfo(
+vdpau_BufferInfo_0_31_1(
VADriverContextP ctx,
VAContextID context,
VABufferID buf_id,
@@ -112,4 +112,13 @@ vdpau_BufferInfo(
unsigned int *num_elements
) attribute_hidden;
+VAStatus
+vdpau_BufferInfo(
+ VADriverContextP ctx,
+ VABufferID buf_id,
+ VABufferType *type,
+ unsigned int *size,
+ unsigned int *num_elements
+) attribute_hidden;
+
#endif /* VDPAU_BUFFER_H */
diff --git a/src/vdpau_driver_template.h b/src/vdpau_driver_template.h
index cf19db1..8e1dd60 100644
--- a/src/vdpau_driver_template.h
+++ b/src/vdpau_driver_template.h
@@ -637,7 +637,11 @@ static VAStatus FUNC(Initialize)(VA_DRIVER_CONTEXT_P ctx)
vtable->vaGetDisplayAttributes = vdpau_GetDisplayAttributes;
vtable->vaSetDisplayAttributes = vdpau_SetDisplayAttributes;
#if VA_INIT_CHECK_VERSION(0,31,1)
+#if VA_INIT_CHECK_VERSION(0,32,0)
vtable->vaBufferInfo = vdpau_BufferInfo;
+#else
+ vtable->vaBufferInfo = vdpau_BufferInfo_0_31_1;
+#endif
vtable->vaLockSurface = vdpau_LockSurface;
vtable->vaUnlockSurface = vdpau_UnlockSurface;
#else