diff options
Diffstat (limited to 'mesalib/src/mesa/state_tracker')
-rw-r--r-- | mesalib/src/mesa/state_tracker/st_cb_texture.c | 2 | ||||
-rw-r--r-- | mesalib/src/mesa/state_tracker/st_draw.c | 8 | ||||
-rw-r--r-- | mesalib/src/mesa/state_tracker/st_extensions.c | 2 |
3 files changed, 8 insertions, 4 deletions
diff --git a/mesalib/src/mesa/state_tracker/st_cb_texture.c b/mesalib/src/mesa/state_tracker/st_cb_texture.c index 354e58de9..8df753f7c 100644 --- a/mesalib/src/mesa/state_tracker/st_cb_texture.c +++ b/mesalib/src/mesa/state_tracker/st_cb_texture.c @@ -1707,7 +1707,7 @@ st_finalize_texture(struct gl_context *ctx, firstImage->base.Width2, firstImage->base.Height2, firstImage->base.Depth2, - stObj->base.BaseLevel, + firstImage->base.Level, &width, &height, &depth)) { width = stObj->width0; height = stObj->height0; diff --git a/mesalib/src/mesa/state_tracker/st_draw.c b/mesalib/src/mesa/state_tracker/st_draw.c index 39a947df7..574802084 100644 --- a/mesalib/src/mesa/state_tracker/st_draw.c +++ b/mesalib/src/mesa/state_tracker/st_draw.c @@ -267,8 +267,8 @@ st_pipe_vertex_format(GLenum type, GLuint size, GLenum format, /** - * This is very similar to vbo_all_varyings_in_vbos() but we test - * the stride. See bug 38626. + * This is very similar to vbo_all_varyings_in_vbos() but we are + * only interested in per-vertex data. See bug 38626. */ static GLboolean all_varyings_in_vbos(const struct gl_client_array *arrays[]) @@ -276,7 +276,9 @@ all_varyings_in_vbos(const struct gl_client_array *arrays[]) GLuint i; for (i = 0; i < VERT_ATTRIB_MAX; i++) - if (arrays[i]->StrideB && !_mesa_is_bufferobj(arrays[i]->BufferObj)) + if (arrays[i]->StrideB && + !arrays[i]->InstanceDivisor && + !_mesa_is_bufferobj(arrays[i]->BufferObj)) return GL_FALSE; return GL_TRUE; diff --git a/mesalib/src/mesa/state_tracker/st_extensions.c b/mesalib/src/mesa/state_tracker/st_extensions.c index ef284ad70..e6572c85a 100644 --- a/mesalib/src/mesa/state_tracker/st_extensions.c +++ b/mesalib/src/mesa/state_tracker/st_extensions.c @@ -30,6 +30,7 @@ #include "main/context.h" #include "main/macros.h" #include "main/mfeatures.h" +#include "main/version.h" #include "pipe/p_context.h" #include "pipe/p_defines.h" @@ -216,6 +217,7 @@ void st_init_limits(struct st_context *st) c->MaxProgramTexelOffset = screen->get_param(screen, PIPE_CAP_MAX_TEXEL_OFFSET); c->GLSLVersion = 120; + _mesa_override_glsl_version(st->ctx); c->UniformBooleanTrue = ~0; } } |