[Bf-blender-cvs] [665288ccd7a] master: Fix (unreported) Scene's copying toolsettings' clone and canvas, and particles' scene and object pointers.

Bastien Montagne noreply at git.blender.org
Mon Jul 10 21:23:41 CEST 2017


Commit: 665288ccd7afd37de9c1c21babc701f4b0fca7e3
Author: Bastien Montagne
Date:   Mon Jul 10 21:12:42 2017 +0200
Branches: master
https://developer.blender.org/rB665288ccd7afd37de9c1c21babc701f4b0fca7e3

Fix (unreported) Scene's copying toolsettings' clone and canvas, and particles' scene and object pointers.

imapaint's clone and canvas are refcounting Image usages.

And particle's editsettings' object and scene seem to be pure runtime
data (they are reset to NULL in readcode), so resetting them to NULL
here as well.

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

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

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

diff --git a/source/blender/blenkernel/intern/scene.c b/source/blender/blenkernel/intern/scene.c
index 13623dcb597..4c8b07574af 100644
--- a/source/blender/blenkernel/intern/scene.c
+++ b/source/blender/blenkernel/intern/scene.c
@@ -292,7 +292,11 @@ Scene *BKE_scene_copy(Main *bmain, Scene *sce, int type)
 		BKE_paint_copy(&ts->imapaint.paint, &ts->imapaint.paint);
 		ts->imapaint.paintcursor = NULL;
 		id_us_plus((ID *)ts->imapaint.stencil);
+		id_us_plus((ID *)ts->imapaint.clone);
+		id_us_plus((ID *)ts->imapaint.canvas);
 		ts->particle.paintcursor = NULL;
+		ts->particle.scene = NULL;
+		ts->particle.object = NULL;
 		
 		/* duplicate Grease Pencil Drawing Brushes */
 		BLI_listbase_clear(&ts->gp_brushes);




More information about the Bf-blender-cvs mailing list