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
diff options
context:
space:
mode:
authorSergey Sharybin <sergey.vfx@gmail.com>2013-01-24 12:49:48 +0400
committerSergey Sharybin <sergey.vfx@gmail.com>2013-01-24 12:49:48 +0400
commit6510367c3864723449f9ce1022a55a5e60d7aef9 (patch)
tree97c7d127131bf92451f282413ffd09227aba6a0e /source/blender/editors/render
parent69900035b32ab8e69e3994fee45a23c0f3367a77 (diff)
Fix #33975: Crash when reloading texture
Two issues in texture_changed: - Missing NULL check for material (slot could be empty) - Materials could be linked to object, added special check for this
Diffstat (limited to 'source/blender/editors/render')
-rw-r--r--source/blender/editors/render/render_update.c9
1 files changed, 8 insertions, 1 deletions
diff --git a/source/blender/editors/render/render_update.c b/source/blender/editors/render/render_update.c
index 38535eca918..16d7923baff 100644
--- a/source/blender/editors/render/render_update.c
+++ b/source/blender/editors/render/render_update.c
@@ -394,7 +394,14 @@ static void texture_changed(Main *bmain, Tex *tex)
if (dm && totmaterial && material) {
for (a = 0; a < *totmaterial; a++) {
- if (material_uses_texture((*material)[a], tex)) {
+ Material *ma;
+
+ if (ob->matbits && ob->matbits[a])
+ ma = ob->mat[a];
+ else
+ ma = (*material)[a];
+
+ if (ma && material_uses_texture(ma, tex)) {
GPU_drawobject_free(dm);
break;
}