소스 검색

mesa/es: Validate FBO target enum in Mesa code rather than the ES wrapper

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Brian Paul <brianp@vmware.com>
tags/mesa-8.0-rc1
Ian Romanick 14 년 전
부모
커밋
6dd8e76869
2개의 변경된 파일4개의 추가작업 그리고 32개의 파일을 삭제
  1. 0
    30
      src/mesa/main/APIspec.xml
  2. 4
    2
      src/mesa/main/fbobject.c

+ 0
- 30
src/mesa/main/APIspec.xml 파일 보기

@@ -3114,11 +3114,6 @@
<param name="target" type="GLenum"/>
<param name="framebuffer" type="GLuint"/>
</proto>

<desc name="target">
<value name="GL_FRAMEBUFFER_OES" category="OES_framebuffer_object"/>
<value name="GL_FRAMEBUFFER" category="GLES2.0"/>
</desc>
</template>

<template name="DeleteFramebuffers">
@@ -3212,11 +3207,6 @@
<param name="renderbuffer" type="GLuint"/>
</proto>

<desc name="target">
<value name="GL_FRAMEBUFFER_OES" category="OES_framebuffer_object"/>
<value name="GL_FRAMEBUFFER" category="GLES2.0"/>
</desc>

<desc name="renderbuffertarget">
<value name="GL_RENDERBUFFER_OES" category="OES_framebuffer_object"/>
<value name="GL_RENDERBUFFER" category="GLES2.0"/>
@@ -3233,11 +3223,6 @@
<param name="level" type="GLint"/>
</proto>

<desc name="target">
<value name="GL_FRAMEBUFFER_OES" category="OES_framebuffer_object"/>
<value name="GL_FRAMEBUFFER" category="GLES2.0"/>
</desc>

<desc name="textarget" error="GL_INVALID_OPERATION">
<value name="GL_TEXTURE_2D"/>
<value name="GL_TEXTURE_CUBE_MAP_POSITIVE_X" category="GLES2.0"/>
@@ -3269,11 +3254,6 @@
<param name="zoffset" type="GLint"/>
</proto>

<desc name="target">
<value name="GL_FRAMEBUFFER_OES" category="OES_framebuffer_object"/>
<value name="GL_FRAMEBUFFER" category="GLES2.0"/>
</desc>

<desc name="textarget" error="GL_INVALID_OPERATION">
<value name="GL_TEXTURE_3D_OES" category="OES_texture_3D"/>
</desc>
@@ -3284,11 +3264,6 @@
<return type="GLenum"/>
<param name="target" type="GLenum"/>
</proto>

<desc name="target">
<value name="GL_FRAMEBUFFER_OES" category="OES_framebuffer_object"/>
<value name="GL_FRAMEBUFFER" category="GLES2.0"/>
</desc>
</template>

<template name="GetFramebufferAttachmentParameter" direction="get">
@@ -3300,11 +3275,6 @@
<vector name="params" type="GLtype *" size="dynamic"/>
</proto>

<desc name="target">
<value name="GL_FRAMEBUFFER_OES" category="OES_framebuffer_object"/>
<value name="GL_FRAMEBUFFER" category="GLES2.0"/>
</desc>

<desc name="pname">
<value name="GL_FRAMEBUFFER_ATTACHMENT_OBJECT_TYPE_OES" category="OES_framebuffer_object"/>
<value name="GL_FRAMEBUFFER_ATTACHMENT_OBJECT_NAME_OES" category="OES_framebuffer_object"/>

+ 4
- 2
src/mesa/main/fbobject.c 파일 보기

@@ -194,9 +194,11 @@ get_framebuffer_target(struct gl_context *ctx, GLenum target)
{
switch (target) {
case GL_DRAW_FRAMEBUFFER:
return ctx->Extensions.EXT_framebuffer_blit ? ctx->DrawBuffer : NULL;
return ctx->Extensions.EXT_framebuffer_blit && ctx->API == API_OPENGL
? ctx->DrawBuffer : NULL;
case GL_READ_FRAMEBUFFER:
return ctx->Extensions.EXT_framebuffer_blit ? ctx->ReadBuffer : NULL;
return ctx->Extensions.EXT_framebuffer_blit && ctx->API == API_OPENGL
? ctx->ReadBuffer : NULL;
case GL_FRAMEBUFFER_EXT:
return ctx->DrawBuffer;
default:

Loading…
취소
저장