[Bf-blender-cvs] [0b99dc1b25d] greasepencil-object: Fix duplication error for Brushes

Antonio Vazquez noreply at git.blender.org
Mon Jul 23 20:12:44 CEST 2018


Commit: 0b99dc1b25db6ddd79209ddbd5924755b71a4613
Author: Antonio Vazquez
Date:   Mon Jul 23 17:06:54 2018 +0200
Branches: greasepencil-object
https://developer.blender.org/rB0b99dc1b25db6ddd79209ddbd5924755b71a4613

Fix duplication error for Brushes

This produced an error when create a new brush and a memory leak when closed Blender.

===================================================================

M	source/blender/blenkernel/intern/brush.c

===================================================================

diff --git a/source/blender/blenkernel/intern/brush.c b/source/blender/blenkernel/intern/brush.c
index b7ebac2523a..598eb9b5b54 100644
--- a/source/blender/blenkernel/intern/brush.c
+++ b/source/blender/blenkernel/intern/brush.c
@@ -562,9 +562,12 @@ void BKE_brush_copy_data(Main *UNUSED(bmain), Brush *brush_dst, const Brush *bru
 	}
 
 	brush_dst->curve = curvemapping_copy(brush_src->curve);
-	brush_dst->gpencil_settings->curve_sensitivity = curvemapping_copy(brush_src->gpencil_settings->curve_sensitivity);
-	brush_dst->gpencil_settings->curve_strength = curvemapping_copy(brush_src->gpencil_settings->curve_strength);
-	brush_dst->gpencil_settings->curve_jitter = curvemapping_copy(brush_src->gpencil_settings->curve_jitter);
+	if (brush_src->gpencil_settings != NULL) {
+		brush_dst->gpencil_settings = MEM_dupallocN(brush_src->gpencil_settings);
+		brush_dst->gpencil_settings->curve_sensitivity = curvemapping_copy(brush_src->gpencil_settings->curve_sensitivity);
+		brush_dst->gpencil_settings->curve_strength = curvemapping_copy(brush_src->gpencil_settings->curve_strength);
+		brush_dst->gpencil_settings->curve_jitter = curvemapping_copy(brush_src->gpencil_settings->curve_jitter);
+	}
 
 	/* enable fake user by default */
 	id_fake_user_set(&brush_dst->id);



More information about the Bf-blender-cvs mailing list