diff options
Diffstat (limited to 'mesalib/src/mesa/main/varray.h')
-rw-r--r-- | mesalib/src/mesa/main/varray.h | 15 |
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; |