forked from bartvdbraak/blender
Fix T43530 using blender on remote connection crashes
Issue here is that remote connection will use OpenGL 1.1. There was a call here that would free VBOs always without a check, however the VBO free function pointer is NULL on such contexts causing a crash. This must have been causing some of the crashes with old contexts. While I think supporting those systems is not such a good idea in general, they can have a few more moments of support I guess. Things might be better now for systems using OGL 1.1 though there are still things that could be done better here - for instance going to dyntopo can crash immediately because we don't have a fallback implementation there. It might be worth reimplementing sculpting with vertex arrays for the legacy case too, but I guess if we move on to OpenGL 2.1 soon this is a bit of a wasted effort.
This commit is contained in:
parent
2d4980e68e
commit
c48c20b498
@ -187,8 +187,10 @@ static void gpu_buffer_pool_free_unused(GPUBufferPool *pool)
|
||||
while (pool->totbuf)
|
||||
gpu_buffer_pool_delete_last(pool);
|
||||
|
||||
glDeleteBuffersARB(pool->totpbvhbufids, pool->pbvhbufids);
|
||||
pool->totpbvhbufids = 0;
|
||||
if (pool->totpbvhbufids > 0) {
|
||||
glDeleteBuffersARB(pool->totpbvhbufids, pool->pbvhbufids);
|
||||
pool->totpbvhbufids = 0;
|
||||
}
|
||||
|
||||
BLI_mutex_unlock(&buffer_mutex);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user