aboutsummaryrefslogtreecommitdiff
path: root/mesalib/src/mesa/main/varray.h
diff options
context:
space:
mode:
Diffstat (limited to 'mesalib/src/mesa/main/varray.h')
-rw-r--r--mesalib/src/mesa/main/varray.h15
1 files changed, 8 insertions, 7 deletions
diff --git a/mesalib/src/mesa/main/varray.h b/mesalib/src/mesa/main/varray.h
index 8a9487c6e..3b9f39a61 100644
--- a/mesalib/src/mesa/main/varray.h
+++ b/mesalib/src/mesa/main/varray.h
@@ -73,12 +73,13 @@ _mesa_update_array_max_element(struct gl_client_array *array)
* a vertex buffer.
*/
static inline const GLubyte *
-_mesa_vertex_attrib_address(struct gl_vertex_attrib_array *array,
- struct gl_vertex_buffer_binding *binding)
+_mesa_vertex_attrib_address(const struct gl_vertex_attrib_array *array,
+ const struct gl_vertex_buffer_binding *binding)
{
- return (binding->BufferObj->Name == 0 ?
- array->Ptr :
- (const GLubyte *)(binding->Offset + array->RelativeOffset));
+ if (_mesa_is_bufferobj(binding->BufferObj))
+ return (const GLubyte *) (binding->Offset + array->RelativeOffset);
+ else
+ return array->Ptr;
}
/**
@@ -88,8 +89,8 @@ _mesa_vertex_attrib_address(struct gl_vertex_attrib_array *array,
static inline void
_mesa_update_client_array(struct gl_context *ctx,
struct gl_client_array *dst,
- struct gl_vertex_attrib_array *src,
- struct gl_vertex_buffer_binding *binding)
+ const struct gl_vertex_attrib_array *src,
+ const struct gl_vertex_buffer_binding *binding)
{
dst->Size = src->Size;
dst->Type = src->Type;