Commit: 28f31bdfd807e35d7016623cc9af8467165a1052
Author: Campbell Barton
Date:   Tue Feb 17 16:49:30 2015 +1100
Branches: master
https://developer.blender.org/rB28f31bdfd807e35d7016623cc9af8467165a1052

etch-a-ton: fix crash selecting strokes

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

M       source/blender/editors/armature/armature_intern.h
M       source/blender/editors/armature/armature_select.c
M       source/blender/editors/armature/editarmature_sketch.c

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

diff --git a/source/blender/editors/armature/armature_intern.h 
b/source/blender/editors/armature/armature_intern.h
index 6d61638..2c64c9a 100644
--- a/source/blender/editors/armature/armature_intern.h
+++ b/source/blender/editors/armature/armature_intern.h
@@ -215,7 +215,7 @@ void POSE_OT_propagate(struct wmOperatorType *ot);
  */
 
 EditBone *make_boneList(struct ListBase *edbo, struct ListBase *bones, struct 
EditBone *parent, struct Bone *actBone);
-void BIF_sk_selectStroke(struct bContext *C, const int mval[2], short extend);
+bool BIF_sk_selectStroke(struct bContext *C, const int mval[2], const bool 
extend);
 
 /* duplicate method */
 void preEditBoneDuplicate(struct ListBase *editbones);
diff --git a/source/blender/editors/armature/armature_select.c 
b/source/blender/editors/armature/armature_select.c
index 307e6c0..da5d660 100644
--- a/source/blender/editors/armature/armature_select.c
+++ b/source/blender/editors/armature/armature_select.c
@@ -485,7 +485,9 @@ bool mouse_armature(bContext *C, const int mval[2], bool 
extend, bool deselect,
 
        view3d_set_viewcontext(C, &vc);
        
-       BIF_sk_selectStroke(C, mval, extend);
+       if (BIF_sk_selectStroke(C, mval, extend)) {
+               return true;
+       }
        
        nearBone = get_nearest_editbonepoint(&vc, mval, arm->edbo, 1, &selmask);
        if (nearBone) {
diff --git a/source/blender/editors/armature/editarmature_sketch.c 
b/source/blender/editors/armature/editarmature_sketch.c
index 6c2d425..c0098a3 100644
--- a/source/blender/editors/armature/editarmature_sketch.c
+++ b/source/blender/editors/armature/editarmature_sketch.c
@@ -1951,7 +1951,7 @@ static void sk_applyGesture(bContext *C, SK_Sketch 
*sketch)
 /********************************************/
 
 
-static int sk_selectStroke(bContext *C, SK_Sketch *sketch, const int mval[2], 
int extend)
+static bool sk_selectStroke(bContext *C, SK_Sketch *sketch, const int mval[2], 
const bool extend)
 {
        ViewContext vc;
        rcti rect;
@@ -2239,15 +2239,19 @@ static int sketch_delete(bContext *C, wmOperator 
*UNUSED(op), const wmEvent *UNU
        return OPERATOR_FINISHED;
 }
 
-void BIF_sk_selectStroke(bContext *C, const int mval[2], short extend)
+bool BIF_sk_selectStroke(bContext *C, const int mval[2], const bool extend)
 {
        ToolSettings *ts = CTX_data_tool_settings(C);
        SK_Sketch *sketch = contextSketch(C, 0);
 
        if (sketch != NULL && ts->bone_sketching & BONE_SKETCHING) {
-               if (sk_selectStroke(C, sketch, mval, extend))
+               if (sk_selectStroke(C, sketch, mval, extend)) {
                        ED_area_tag_redraw(CTX_wm_area(C));
+                       return true;
+               }
        }
+
+       return false;
 }
 
 void BIF_convertSketch(bContext *C)

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

Reply via email to