[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [30683] trunk/blender/source/blender/ blenkernel/intern/pointcache.c: bugfix [#22988] Duplicating Lights by Frame Causes Hangup

Campbell Barton ideasman42 at gmail.com
Sat Jul 24 04:51:54 CEST 2010


Revision: 30683
          http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=30683
Author:   campbellbarton
Date:     2010-07-24 04:51:51 +0200 (Sat, 24 Jul 2010)

Log Message:
-----------
bugfix [#22988] Duplicating Lights by Frame Causes Hangup

Modified Paths:
--------------
    trunk/blender/source/blender/blenkernel/intern/pointcache.c

Modified: trunk/blender/source/blender/blenkernel/intern/pointcache.c
===================================================================
--- trunk/blender/source/blender/blenkernel/intern/pointcache.c	2010-07-24 02:49:58 UTC (rev 30682)
+++ trunk/blender/source/blender/blenkernel/intern/pointcache.c	2010-07-24 02:51:51 UTC (rev 30683)
@@ -1041,11 +1041,13 @@
 		if((lb_dupli_ob=object_duplilist(scene, ob))) {
 			DupliObject *dob;
 			for(dob= lb_dupli_ob->first; dob; dob= dob->next) {
-				ListBase lb_dupli_pid;
-				BKE_ptcache_ids_from_object(&lb_dupli_pid, dob->ob, scene, duplis);
-				addlisttolist(lb, &lb_dupli_pid);
-				if(lb_dupli_pid.first)
-					printf("Adding Dupli\n");
+				if(dob->ob != ob) { /* avoids recursive loops with dupliframes: bug 22988 */
+					ListBase lb_dupli_pid;
+					BKE_ptcache_ids_from_object(&lb_dupli_pid, dob->ob, scene, duplis);
+					addlisttolist(lb, &lb_dupli_pid);
+					if(lb_dupli_pid.first)
+						printf("Adding Dupli\n");
+				}
 			}
 
 			free_object_duplilist(lb_dupli_ob);	/* does restore */





More information about the Bf-blender-cvs mailing list