[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [28177] branches/render25/source/blender: merge from trunk
Joseph Eagar
joeedh at gmail.com
Tue Apr 13 22:52:42 CEST 2010
Revision: 28177
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=28177
Author: joeedh
Date: 2010-04-13 22:52:37 +0200 (Tue, 13 Apr 2010)
Log Message:
-----------
merge from trunk
Modified Paths:
--------------
branches/render25/source/blender/blenlib/BLI_threads.h
branches/render25/source/blender/gpu/intern/gpu_draw.c
Modified: branches/render25/source/blender/blenlib/BLI_threads.h
===================================================================
--- branches/render25/source/blender/blenlib/BLI_threads.h 2010-04-13 20:34:40 UTC (rev 28176)
+++ branches/render25/source/blender/blenlib/BLI_threads.h 2010-04-13 20:52:37 UTC (rev 28177)
@@ -73,6 +73,7 @@
/* Mutex Lock */
typedef pthread_mutex_t ThreadMutex;
+#define BLI_MUTEX_INITIALIZER PTHREAD_MUTEX_INITIALIZER;
void BLI_mutex_init(ThreadMutex *mutex);
void BLI_mutex_lock(ThreadMutex *mutex);
Modified: branches/render25/source/blender/gpu/intern/gpu_draw.c
===================================================================
--- branches/render25/source/blender/gpu/intern/gpu_draw.c 2010-04-13 20:34:40 UTC (rev 28176)
+++ branches/render25/source/blender/gpu/intern/gpu_draw.c 2010-04-13 20:52:37 UTC (rev 28177)
@@ -785,11 +785,13 @@
}
ListBase image_free_queue = {NULL, NULL};
+static ThreadMutex queuelock = BLI_MUTEX_INITIALIZER;
+
static void flush_queued_free(void)
{
Image *ima, *imanext;
- BLI_lock_thread(LOCK_IMAGE);
+ BLI_mutex_lock(&queuelock);
ima = image_free_queue.first;
image_free_queue.first = image_free_queue.last = NULL;
@@ -799,16 +801,16 @@
MEM_freeN(ima);
}
- BLI_unlock_thread(LOCK_IMAGE);
+ BLI_mutex_unlock(&queuelock);
}
static void queue_image_for_free(Image *ima)
{
Image *cpy = MEM_dupallocN(ima);
- BLI_lock_thread(LOCK_IMAGE);
+ BLI_mutex_lock(&queuelock);
BLI_addtail(&image_free_queue, cpy);
- BLI_unlock_thread(LOCK_IMAGE);
+ BLI_mutex_unlock(&queuelock);
}
void GPU_free_image(Image *ima)
More information about the Bf-blender-cvs
mailing list