Revision: 26640
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=26640
Author:   campbellbarton
Date:     2010-02-06 15:32:50 +0100 (Sat, 06 Feb 2010)

Log Message:
-----------
bugfix [#20989] DupliVert of DupliGroup crash

Modified Paths:
--------------
    trunk/blender/source/blender/editors/space_view3d/view3d_draw.c

Modified: trunk/blender/source/blender/editors/space_view3d/view3d_draw.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/view3d_draw.c     
2010-02-06 12:44:37 UTC (rev 26639)
+++ trunk/blender/source/blender/editors/space_view3d/view3d_draw.c     
2010-02-06 14:32:50 UTC (rev 26640)
@@ -1503,7 +1503,7 @@
        ListBase *lb;
        DupliObject *dob;
        Base tbase;
-       BoundBox bb; /* use a copy because draw_object, calls clear_mesh_caches 
*/
+       BoundBox bb, *bb_tmp; /* use a copy because draw_object, calls 
clear_mesh_caches */
        GLuint displist=0;
        short transflag, use_displist= -1;      /* -1 is initialize */
        char dt, dtx;
@@ -1539,14 +1539,14 @@
                        if(use_displist == -1) {
                                
                                /* lamp drawing messes with matrices, could be 
handled smarter... but this works */
-                               if(dob->ob->type==OB_LAMP || 
dob->type==OB_DUPLIGROUP)
+                               if(dob->ob->type==OB_LAMP || 
dob->type==OB_DUPLIGROUP || !(bb_tmp= object_get_boundbox(dob->ob)))
                                        use_displist= 0;
                                else {
+                                       bb= *bb_tmp; /* must make a copy  */
+
                                        /* disable boundbox check for list 
creation */
                                        object_boundbox_flag(dob->ob, 
OB_BB_DISABLED, 1);
                                        /* need this for next part of code */
-                                       bb= *object_get_boundbox(dob->ob);
-                                       
                                        unit_m4(dob->ob->obmat);        /* 
obmat gets restored */
                                        
                                        displist= glGenLists(1);


_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to