[Bf-blender-cvs] [112f431] master: Fix T47951: UserId problem on reload.

Bastien Montagne noreply at git.blender.org
Sat Mar 26 16:26:03 CET 2016


Commit: 112f431c3b71576a3a6dbd875340dc74e57502d0
Author: Bastien Montagne
Date:   Sat Mar 26 16:22:17 2016 +0100
Branches: master
https://developer.blender.org/rB112f431c3b71576a3a6dbd875340dc74e57502d0

Fix T47951: UserId problem on reload.

readfile.c would increment object usercount in three places, where it should not.
Remember kids: Objects are **only** refcounted by Scene's bases, and Object->proxy!

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

M	source/blender/blenloader/intern/readfile.c

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

diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index 5f90417..a526717 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -3308,7 +3308,7 @@ static void lib_link_camera(FileData *fd, Main *main)
 			
 			ca->ipo = newlibadr_us(fd, ca->id.lib, ca->ipo); // XXX deprecated - old animation system
 			
-			ca->dof_ob = newlibadr_us(fd, ca->id.lib, ca->dof_ob);
+			ca->dof_ob = newlibadr(fd, ca->id.lib, ca->dof_ob);
 			
 			ca->id.tag &= ~LIB_TAG_NEED_LINK;
 		}
@@ -4011,7 +4011,7 @@ static void lib_link_partdeflect(FileData *fd, ID *id, PartDeflect *pd)
 	if (pd && pd->tex)
 		pd->tex = newlibadr_us(fd, id->lib, pd->tex);
 	if (pd && pd->f_source)
-		pd->f_source = newlibadr_us(fd, id->lib, pd->f_source);
+		pd->f_source = newlibadr(fd, id->lib, pd->f_source);
 }
 
 static void lib_link_particlesettings(FileData *fd, Main *main)
@@ -5577,7 +5577,7 @@ static void lib_link_scene(FileData *fd, Main *main)
 
 			if (sce->toolsettings->sculpt)
 				sce->toolsettings->sculpt->gravity_object =
-						newlibadr_us(fd, sce->id.lib, sce->toolsettings->sculpt->gravity_object);
+						newlibadr(fd, sce->id.lib, sce->toolsettings->sculpt->gravity_object);
 
 			if (sce->toolsettings->imapaint.stencil)
 				sce->toolsettings->imapaint.stencil =




More information about the Bf-blender-cvs mailing list