Revision: 25082
          
http://projects.blender.org/plugins/scmsvn/viewcvs.php?view=rev&root=bf-blender&revision=25082
Author:   theeth
Date:     2009-12-02 20:59:57 +0100 (Wed, 02 Dec 2009)

Log Message:
-----------
[#20213] Align to Transform Orientation crashes Blender

Align needs to be call with region context.

Also added checks to prevent this from crashing if not called properly.

Modified Paths:
--------------
    trunk/blender/release/scripts/ui/space_view3d.py
    trunk/blender/source/blender/editors/transform/transform.c
    trunk/blender/source/blender/editors/transform/transform_generics.c

Modified: trunk/blender/release/scripts/ui/space_view3d.py
===================================================================
--- trunk/blender/release/scripts/ui/space_view3d.py    2009-12-02 19:32:21 UTC 
(rev 25081)
+++ trunk/blender/release/scripts/ui/space_view3d.py    2009-12-02 19:59:57 UTC 
(rev 25082)
@@ -139,7 +139,7 @@
         if context.edit_object and context.edit_object.type == 'ARMATURE':
             layout.operator("armature.align")
         else:
-            layout.operator_context = 'EXEC_AREA'
+            layout.operator_context = 'EXEC_REGION_WIN'
             layout.operator("tfm.transform", text="Align to Transform 
Orientation").mode = 'ALIGN' # XXX see alignmenu() in edit.c of b2.4x to get 
this working
 
         layout.separator()

Modified: trunk/blender/source/blender/editors/transform/transform.c
===================================================================
--- trunk/blender/source/blender/editors/transform/transform.c  2009-12-02 
19:32:21 UTC (rev 25081)
+++ trunk/blender/source/blender/editors/transform/transform.c  2009-12-02 
19:59:57 UTC (rev 25082)
@@ -126,7 +126,7 @@
 
 void setTransformViewMatrices(TransInfo *t)
 {
-       if(t->spacetype==SPACE_VIEW3D && t->ar->regiontype == RGN_TYPE_WINDOW) {
+       if(t->spacetype==SPACE_VIEW3D && t->ar && t->ar->regiontype == 
RGN_TYPE_WINDOW) {
                RegionView3D *rv3d = t->ar->regiondata;
 
                copy_m4_m4(t->viewmat, rv3d->viewmat);

Modified: trunk/blender/source/blender/editors/transform/transform_generics.c
===================================================================
--- trunk/blender/source/blender/editors/transform/transform_generics.c 
2009-12-02 19:32:21 UTC (rev 25081)
+++ trunk/blender/source/blender/editors/transform/transform_generics.c 
2009-12-02 19:59:57 UTC (rev 25082)
@@ -1357,7 +1357,7 @@
        /* for panning from cameraview */
        if(t->flag & T_OBJECT)
        {
-               if(t->spacetype==SPACE_VIEW3D && t->ar->regiontype == 
RGN_TYPE_WINDOW)
+               if(t->spacetype==SPACE_VIEW3D && t->ar && t->ar->regiontype == 
RGN_TYPE_WINDOW)
                {
                        View3D *v3d = t->view;
                        Scene *scene = t->scene;


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

Reply via email to