Revision: 23358
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=23358
Author:   aligorith
Date:     2009-09-20 03:36:11 +0200 (Sun, 20 Sep 2009)

Log Message:
-----------
2.5 - 2 Armature Related Crash Fixes

* #19397: Properties panel (transform panel in 3D-View) crashed when there was 
no active posechannel. 

* Breakdown/Push/Relax Pose tools crashed when auto-keyframing was enabled. 
There where 2 main causes here: 1) laziness to try and avoid having to clear 
some data everytime, 2) a typo for one of the KeyingSet names

Modified Paths:
--------------
    trunk/blender/source/blender/editors/armature/poseSlide.c
    trunk/blender/source/blender/editors/space_view3d/view3d_buttons.c

Modified: trunk/blender/source/blender/editors/armature/poseSlide.c
===================================================================
--- trunk/blender/source/blender/editors/armature/poseSlide.c   2009-09-19 
22:11:26 UTC (rev 23357)
+++ trunk/blender/source/blender/editors/armature/poseSlide.c   2009-09-20 
01:36:11 UTC (rev 23358)
@@ -219,7 +219,7 @@
        /* get builtin KeyingSets */
        pso->ks_loc= ANIM_builtin_keyingset_get_named(NULL, "Location");
        pso->ks_rot= ANIM_builtin_keyingset_get_named(NULL, "Rotation");
-       pso->ks_scale= ANIM_builtin_keyingset_get_named(NULL, "Scale");
+       pso->ks_scale= ANIM_builtin_keyingset_get_named(NULL, "Scaling");
        
        /* return status is whether we've got all the data we were requested to 
get */
        return 1;
@@ -393,8 +393,7 @@
                ListBase dsources = {&cks, &cks};
                
                /* init common-key-source for use by KeyingSets */
-               // TODO: for now, we don't clear it out, since it should be 
safe to do so...
-               //memset(&cks, 0, sizeof(bCommonKeySrc));
+               memset(&cks, 0, sizeof(bCommonKeySrc));
                cks.id= &pso->ob->id;
                
                /* init cks for this PoseChannel, then use the relative 
KeyingSets to keyframe it */

Modified: trunk/blender/source/blender/editors/space_view3d/view3d_buttons.c
===================================================================
--- trunk/blender/source/blender/editors/space_view3d/view3d_buttons.c  
2009-09-19 22:11:26 UTC (rev 23357)
+++ trunk/blender/source/blender/editors/space_view3d/view3d_buttons.c  
2009-09-20 01:36:11 UTC (rev 23358)
@@ -512,6 +512,10 @@
                if(bone && (bone->flag & BONE_ACTIVE) && (bone->layer & 
arm->layer))
                        break;
        }
+       if (!pchan)     {
+               uiDefBut(block, LABEL, 0, "No Bone Active",                     
0, 240, 100, 20, 0, 0, 0, 0, 0, "");
+               return; 
+       }
        
        if (pchan->rotmode == PCHAN_ROT_AXISANGLE) {
                float quat[4];
@@ -1447,25 +1451,12 @@
        pt->draw= view3d_panel_transform_spaces;
        BLI_addtail(&art->paneltypes, pt);
 
-       pt= MEM_callocN(sizeof(PanelType), "spacetype view3d panel gpencil");
-       strcpy(pt->idname, "VIEW3D_PT_gpencil");
-       strcpy(pt->label, "Greas Pencil");
-       pt->draw= view3d_panel_gpencil;
-       BLI_addtail(&art->paneltypes, pt);*/
-
        pt= MEM_callocN(sizeof(PanelType), "spacetype view3d panel bonesketch 
spaces");
        strcpy(pt->idname, "VIEW3D_PT_bonesketch_spaces");
        strcpy(pt->label, "Bone Sketching");
        pt->draw= view3d_panel_bonesketch_spaces;
        pt->poll= view3d_panel_bonesketch_spaces_poll;
        BLI_addtail(&art->paneltypes, pt);
-
-       /*
-       pt= MEM_callocN(sizeof(PanelType), "spacetype view3d panel redo");
-       strcpy(pt->idname, "VIEW3D_PT_redo");
-       strcpy(pt->label, "Last Operator");
-       pt->draw= view3d_panel_operator_redo;
-       BLI_addtail(&art->paneltypes, pt);
 */
        // XXX view3d_panel_preview(C, ar, 0);
 }


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

Reply via email to