From 46a391b668c19ea3053d117dea67386b13904f78 Mon Sep 17 00:00:00 2001 From: Sergey Sharybin Date: Tue, 20 Mar 2018 11:22:47 +0100 Subject: [PATCH] Fix missing array duplication when copying material Texture paint slots were copied as a pointer, causing double-free. --- source/blender/blenkernel/intern/material.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/source/blender/blenkernel/intern/material.c b/source/blender/blenkernel/intern/material.c index 0dd7047a376..01f16625386 100644 --- a/source/blender/blenkernel/intern/material.c +++ b/source/blender/blenkernel/intern/material.c @@ -256,6 +256,10 @@ void BKE_material_copy_data(Main *bmain, Material *ma_dst, const Material *ma_sr ma_dst->preview = NULL; } + if (ma_src->texpaintslot != NULL) { + ma_dst->texpaintslot = MEM_dupallocN(ma_src->texpaintslot); + } + BLI_listbase_clear(&ma_dst->gpumaterial); }