diff options
author | Grigori Goronzy <[email protected]> | 2014-03-02 12:57:04 +0100 |
---|---|---|
committer | Christian König <[email protected]> | 2014-03-03 18:37:59 +0100 |
commit | 070036ca399d88293ef51b40e859c06acf0c7606 (patch) | |
tree | 69ad2e0e749cd79e45d31c5a40bd719ffc9c1f35 /src | |
parent | 86c06871a282ec60e81d0cbabc3b1d661bc33c75 (diff) |
NV_vdpau_interop: fix IsSurfaceNV return type
The spec incorrectly used void as return type, when it should have
been GLboolean. This has now been fixed. According to Nvidia, their
implementation always used GLboolean.
Reviewed-by: Christian König <[email protected]>
Diffstat (limited to 'src')
-rw-r--r-- | src/mapi/glapi/gen/NV_vdpau_interop.xml | 1 | ||||
-rw-r--r-- | src/mesa/main/vdpau.c | 9 | ||||
-rw-r--r-- | src/mesa/main/vdpau.h | 2 |
3 files changed, 7 insertions, 5 deletions
diff --git a/src/mapi/glapi/gen/NV_vdpau_interop.xml b/src/mapi/glapi/gen/NV_vdpau_interop.xml index cf5f0eddd25..0b19e1a85f6 100644 --- a/src/mapi/glapi/gen/NV_vdpau_interop.xml +++ b/src/mapi/glapi/gen/NV_vdpau_interop.xml @@ -29,6 +29,7 @@ </function> <function name="VDPAUIsSurfaceNV" offset="assign"> + <return type="GLboolean"/> <param name="surface" type="GLintptr"/> </function> diff --git a/src/mesa/main/vdpau.c b/src/mesa/main/vdpau.c index 3597576076f..c2cf20664c6 100644 --- a/src/mesa/main/vdpau.c +++ b/src/mesa/main/vdpau.c @@ -205,7 +205,7 @@ _mesa_VDPAURegisterOutputSurfaceNV(const GLvoid *vdpSurface, GLenum target, numTextureNames, textureNames); } -void GLAPIENTRY +GLboolean GLAPIENTRY _mesa_VDPAUIsSurfaceNV(GLintptr surface) { struct vdp_surface *surf = (struct vdp_surface *)surface; @@ -213,13 +213,14 @@ _mesa_VDPAUIsSurfaceNV(GLintptr surface) if (!ctx->vdpDevice || !ctx->vdpGetProcAddress || !ctx->vdpSurfaces) { _mesa_error(ctx, GL_INVALID_OPERATION, "VDPAUIsSurfaceNV"); - return; + return false; } if (!_mesa_set_search(ctx->vdpSurfaces, _mesa_hash_pointer(surf), surf)) { - _mesa_error(ctx, GL_INVALID_VALUE, "VDPAUIsSurfaceNV"); - return; + return false; } + + return true; } void GLAPIENTRY diff --git a/src/mesa/main/vdpau.h b/src/mesa/main/vdpau.h index f32d6dacb83..627609c50de 100644 --- a/src/mesa/main/vdpau.h +++ b/src/mesa/main/vdpau.h @@ -50,7 +50,7 @@ _mesa_VDPAURegisterOutputSurfaceNV(const GLvoid *vdpSurface, GLenum target, GLsizei numTextureNames, const GLuint *textureNames); -extern void GLAPIENTRY +extern GLboolean GLAPIENTRY _mesa_VDPAUIsSurfaceNV(GLintptr surface); extern void GLAPIENTRY |