summaryrefslogtreecommitdiffstats
path: root/src/mesa/main
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/main')
-rw-r--r--src/mesa/main/context.h3
-rw-r--r--src/mesa/main/enable.c1
-rw-r--r--src/mesa/main/extensions_table.h1
-rw-r--r--src/mesa/main/mtypes.h1
-rw-r--r--src/mesa/main/shaderapi.c18
-rw-r--r--src/mesa/main/tests/dispatch_sanity.cpp3
6 files changed, 8 insertions, 19 deletions
diff --git a/src/mesa/main/context.h b/src/mesa/main/context.h
index 8b64f452572..46444d2c427 100644
--- a/src/mesa/main/context.h
+++ b/src/mesa/main/context.h
@@ -330,7 +330,8 @@ _mesa_is_gles31(const struct gl_context *ctx)
static inline bool
_mesa_has_geometry_shaders(const struct gl_context *ctx)
{
- return _mesa_is_desktop_gl(ctx) && ctx->Version >= 32;
+ return _mesa_has_OES_geometry_shader(ctx) ||
+ (_mesa_is_desktop_gl(ctx) && ctx->Version >= 32);
}
diff --git a/src/mesa/main/enable.c b/src/mesa/main/enable.c
index a8a667e3c12..f7941817845 100644
--- a/src/mesa/main/enable.c
+++ b/src/mesa/main/enable.c
@@ -39,7 +39,6 @@
#include "enums.h"
#include "api_arrayelt.h"
#include "texstate.h"
-#include "drivers/common/meta.h"
diff --git a/src/mesa/main/extensions_table.h b/src/mesa/main/extensions_table.h
index 9cec1762dbe..11f4482f8d2 100644
--- a/src/mesa/main/extensions_table.h
+++ b/src/mesa/main/extensions_table.h
@@ -311,6 +311,7 @@ EXT(OES_element_index_uint , dummy_true
EXT(OES_fbo_render_mipmap , dummy_true , x , x , ES1, ES2, 2005)
EXT(OES_fixed_point , dummy_true , x , x , ES1, x , 2002)
EXT(OES_framebuffer_object , dummy_true , x , x , ES1, x , 2005)
+EXT(OES_geometry_shader , OES_geometry_shader , x , x , x , 31, 2015)
EXT(OES_get_program_binary , dummy_true , x , x , x , ES2, 2008)
EXT(OES_mapbuffer , dummy_true , x , x , ES1, ES2, 2005)
EXT(OES_packed_depth_stencil , dummy_true , x , x , ES1, ES2, 2007)
diff --git a/src/mesa/main/mtypes.h b/src/mesa/main/mtypes.h
index 3a0b89f4572..c5400ab1a7e 100644
--- a/src/mesa/main/mtypes.h
+++ b/src/mesa/main/mtypes.h
@@ -3910,6 +3910,7 @@ struct gl_extensions
GLboolean OES_texture_half_float;
GLboolean OES_texture_half_float_linear;
GLboolean OES_compressed_ETC1_RGB8_texture;
+ GLboolean OES_geometry_shader;
GLboolean extension_sentinel;
/** The extension string */
const GLubyte *String;
diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c
index 5854369a28c..a988f41697b 100644
--- a/src/mesa/main/shaderapi.c
+++ b/src/mesa/main/shaderapi.c
@@ -1374,26 +1374,10 @@ _mesa_DetachShader(GLuint program, GLuint shader)
void GLAPIENTRY
_mesa_GetAttachedObjectsARB(GLhandleARB container, GLsizei maxCount,
- GLsizei * count, GLhandleARB * objARB)
+ GLsizei * count, GLhandleARB * obj)
{
- int i;
- GLuint *obj;
-
GET_CURRENT_CONTEXT(ctx);
-
- obj = calloc(maxCount, sizeof(GLuint));
- if (!obj) {
- _mesa_error(ctx, GL_OUT_OF_MEMORY, "glGetAttachedObjectsARB");
- return;
- }
-
get_attached_shaders(ctx, container, maxCount, count, obj);
-
- for (i = 0 ; i < *count; i++) {
- objARB[i] = (GLhandleARB)obj[i];
- }
-
- free(obj);
}
diff --git a/src/mesa/main/tests/dispatch_sanity.cpp b/src/mesa/main/tests/dispatch_sanity.cpp
index eb1108124e9..e6412962251 100644
--- a/src/mesa/main/tests/dispatch_sanity.cpp
+++ b/src/mesa/main/tests/dispatch_sanity.cpp
@@ -2527,5 +2527,8 @@ const struct function gles31_functions_possible[] = {
/* GL_EXT_blend_func_extended */
{ "glGetProgramResourceLocationIndexEXT", 31, -1 },
+ /* GL_OES_geometry_shader */
+ { "glFramebufferTextureOES", 31, -1},
+
{ NULL, 0, -1 },
};