mesa: revert some recent VBO buffer object refcounting changes
Reverts part of commit d7ea9ddf58.
We were calling _mesa_reference_buffer_object() on some heap-allocated
memory that was uninitialized and could trigger an assertion.
We can actually go back to "looser" ref counting of the Null/default
buffer object in these cases.
This commit is contained in:
@@ -49,7 +49,6 @@
|
||||
#include "main/glheader.h"
|
||||
#include "main/imports.h"
|
||||
#include "main/mtypes.h"
|
||||
#include "main/bufferobj.h"
|
||||
|
||||
#include "vbo.h"
|
||||
|
||||
@@ -162,8 +161,7 @@ void vbo_rebase_prims( GLcontext *ctx,
|
||||
GL_ELEMENT_ARRAY_BUFFER,
|
||||
ib->obj);
|
||||
|
||||
_mesa_reference_buffer_object(ctx, &tmp_ib.obj,
|
||||
ctx->Shared->NullBufferObj);
|
||||
tmp_ib.obj = ctx->Shared->NullBufferObj;
|
||||
tmp_ib.ptr = tmp_indices;
|
||||
tmp_ib.count = ib->count;
|
||||
tmp_ib.type = ib->type;
|
||||
|
||||
@@ -30,7 +30,6 @@
|
||||
*/
|
||||
|
||||
#include "main/glheader.h"
|
||||
#include "main/bufferobj.h"
|
||||
#include "main/imports.h"
|
||||
#include "main/image.h"
|
||||
#include "main/macros.h"
|
||||
@@ -518,8 +517,7 @@ replay_init( struct copy_context *copy )
|
||||
dst->Ptr = copy->dstbuf + offset;
|
||||
dst->Enabled = GL_TRUE;
|
||||
dst->Normalized = src->Normalized;
|
||||
_mesa_reference_buffer_object(ctx, &dst->BufferObj,
|
||||
ctx->Shared->NullBufferObj);
|
||||
dst->BufferObj = ctx->Shared->NullBufferObj;
|
||||
dst->_MaxElement = copy->dstbuf_size; /* may be less! */
|
||||
|
||||
offset += copy->varying[i].size;
|
||||
@@ -539,8 +537,7 @@ replay_init( struct copy_context *copy )
|
||||
*/
|
||||
copy->dstib.count = 0; /* duplicates dstelt_nr */
|
||||
copy->dstib.type = GL_UNSIGNED_INT;
|
||||
_mesa_reference_buffer_object(ctx, ©->dstib.obj,
|
||||
ctx->Shared->NullBufferObj);
|
||||
copy->dstib.obj = ctx->Shared->NullBufferObj;
|
||||
copy->dstib.ptr = copy->dstelt;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user