Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/source
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2013-09-20 13:28:52 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2013-09-20 13:28:52 +0400
commitaa077fecd71a3553eda90ecc39267107f396e513 (patch)
tree3c5edc9f36d0a24feb7d9f8d429ad0fbc55ba228 /source
parent37b82a2d260edc1e719cba845360c0c40a24e241 (diff)
Fix for displacement bake buffer might be allocated twice
Issue was caused by missing NULL-pointer check in user-data initialization. This issue might have lead to wrong displacement map being baked.
Diffstat (limited to 'source')
-rw-r--r--source/blender/render/intern/source/bake.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/source/blender/render/intern/source/bake.c b/source/blender/render/intern/source/bake.c
index 564cca09834..cd72c6af057 100644
--- a/source/blender/render/intern/source/bake.c
+++ b/source/blender/render/intern/source/bake.c
@@ -828,8 +828,11 @@ static void shade_tface(BakeShade *bs)
}
}
- if (bs->use_displacement_buffer)
- userdata->displacement_buffer = MEM_callocN(sizeof(float) * bs->rectx * bs->recty, "BakeDisp");
+ if (bs->use_displacement_buffer) {
+ if (userdata->displacement_buffer == NULL) {
+ userdata->displacement_buffer = MEM_callocN(sizeof(float) * bs->rectx * bs->recty, "BakeDisp");
+ }
+ }
bs->ibuf->userdata = userdata;