[Bf-blender-cvs] [1f5029b] master: Fix T38503: crash in non-threadsafe VBO free code during render.

Brecht Van Lommel noreply at git.blender.org
Fri Feb 7 13:36:07 CET 2014


Commit: 1f5029b18487b411bfe59f6e4359358642dc23a3
Author: Brecht Van Lommel
Date:   Fri Feb 7 13:33:15 2014 +0100
https://developer.blender.org/rB1f5029b18487b411bfe59f6e4359358642dc23a3

Fix T38503: crash in non-threadsafe VBO free code during render.

===================================================================

M	source/blender/gpu/intern/gpu_buffers.c

===================================================================

diff --git a/source/blender/gpu/intern/gpu_buffers.c b/source/blender/gpu/intern/gpu_buffers.c
index 6a6979e..45172d7 100644
--- a/source/blender/gpu/intern/gpu_buffers.c
+++ b/source/blender/gpu/intern/gpu_buffers.c
@@ -187,12 +187,16 @@ static void gpu_buffer_pool_free_unused(GPUBufferPool *pool)
 {
 	if (!pool)
 		return;
+
+	BLI_mutex_lock(&buffer_mutex);
 	
 	while (pool->totbuf)
 		gpu_buffer_pool_delete_last(pool);
 
 	glDeleteBuffersARB(pool->totpbvhbufids, pool->pbvhbufids);
 	pool->totpbvhbufids = 0;
+
+	BLI_mutex_unlock(&buffer_mutex);
 }
 
 static GPUBufferPool *gpu_buffer_pool = NULL;




More information about the Bf-blender-cvs mailing list