summaryrefslogtreecommitdiffstats
path: root/src/mesa/state_tracker
diff options
context:
space:
mode:
Diffstat (limited to 'src/mesa/state_tracker')
-rw-r--r--src/mesa/state_tracker/st_cb_fbo.c3
-rw-r--r--src/mesa/state_tracker/st_draw.c7
-rw-r--r--src/mesa/state_tracker/st_program.c4
3 files changed, 8 insertions, 6 deletions
diff --git a/src/mesa/state_tracker/st_cb_fbo.c b/src/mesa/state_tracker/st_cb_fbo.c
index 64424f77634..5b9e2037423 100644
--- a/src/mesa/state_tracker/st_cb_fbo.c
+++ b/src/mesa/state_tracker/st_cb_fbo.c
@@ -270,7 +270,8 @@ st_new_renderbuffer_fb(enum pipe_format format, int samples, boolean sw)
strb->Base.InternalFormat = GL_STENCIL_INDEX8_EXT;
break;
case PIPE_FORMAT_R16G16B16A16_SNORM:
- strb->Base.InternalFormat = GL_RGBA16;
+ /* accum buffer */
+ strb->Base.InternalFormat = GL_RGBA16_SNORM;
break;
case PIPE_FORMAT_R8_UNORM:
strb->Base.InternalFormat = GL_R8;
diff --git a/src/mesa/state_tracker/st_draw.c b/src/mesa/state_tracker/st_draw.c
index 46a4f9cf8c5..56955d357b1 100644
--- a/src/mesa/state_tracker/st_draw.c
+++ b/src/mesa/state_tracker/st_draw.c
@@ -42,6 +42,7 @@
#include "main/imports.h"
#include "main/image.h"
+#include "main/bufferobj.h"
#include "main/macros.h"
#include "main/mfeatures.h"
#include "program/prog_uniform.h"
@@ -336,7 +337,7 @@ setup_interleaved_attribs(struct gl_context *ctx,
assert(element_size == array->Size * _mesa_sizeof_type(array->Type));
if (attr == 0) {
- if (bufobj && bufobj->Name) {
+ if (bufobj && _mesa_is_bufferobj(bufobj)) {
vbuffer->buffer = NULL;
pipe_resource_reference(&vbuffer->buffer, stobj->buffer);
vbuffer->buffer_offset = pointer_to_offset(low_addr);
@@ -402,7 +403,7 @@ setup_non_interleaved_attribs(struct gl_context *ctx,
assert(element_size == array->Size * _mesa_sizeof_type(array->Type));
- if (bufobj && bufobj->Name) {
+ if (bufobj && _mesa_is_bufferobj(bufobj)) {
/* Attribute data is in a VBO.
* Recall that for VBOs, the gl_client_array->Ptr field is
* really an offset from the start of the VBO, not a pointer.
@@ -493,7 +494,7 @@ setup_index_buffer(struct gl_context *ctx,
}
/* get/create the index buffer object */
- if (bufobj && bufobj->Name) {
+ if (bufobj && _mesa_is_bufferobj(bufobj)) {
/* elements/indexes are in a real VBO */
struct st_buffer_object *stobj = st_buffer_object(bufobj);
pipe_resource_reference(&ibuffer->buffer, stobj->buffer);
diff --git a/src/mesa/state_tracker/st_program.c b/src/mesa/state_tracker/st_program.c
index 0b1ad63afeb..7a6d33d3fea 100644
--- a/src/mesa/state_tracker/st_program.c
+++ b/src/mesa/state_tracker/st_program.c
@@ -1087,8 +1087,8 @@ destroy_program_variants(struct st_context *st, struct gl_program *program)
}
break;
default:
- _mesa_problem(NULL, "Unexpected program target in "
- "destroy_program_variants_cb()");
+ _mesa_problem(NULL, "Unexpected program target 0x%x in "
+ "destroy_program_variants_cb()", program->Target);
}
}