From 02fd98e1cf488e33cc813eefc99466fb1fa13b7c Mon Sep 17 00:00:00 2001 From: Brecht Van Lommel Date: Thu, 23 Sep 2010 21:38:01 +0000 Subject: [PATCH] Fix #23170: multithreaded texture baking could give wrong results with margin, with some threads not writing the margin mask. --- source/blender/render/intern/source/rendercore.c | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/source/blender/render/intern/source/rendercore.c b/source/blender/render/intern/source/rendercore.c index 8e1a959abef..bd4af52cd91 100644 --- a/source/blender/render/intern/source/rendercore.c +++ b/source/blender/render/intern/source/rendercore.c @@ -2562,10 +2562,9 @@ static void shade_tface(BakeShade *bs) if (bs->usemask) { if (bs->ibuf->userdata==NULL) { BLI_lock_thread(LOCK_CUSTOM1); - if (bs->ibuf->userdata==NULL) { /* since the thread was locked, its possible another thread alloced the value */ + if (bs->ibuf->userdata==NULL) /* since the thread was locked, its possible another thread alloced the value */ bs->ibuf->userdata = (void *)MEM_callocN(sizeof(char)*bs->rectx*bs->recty, "BakeMask"); - bs->rect_mask= (char *)bs->ibuf->userdata; - } + bs->rect_mask= (char *)bs->ibuf->userdata; BLI_unlock_thread(LOCK_CUSTOM1); } else { bs->rect_mask= (char *)bs->ibuf->userdata;